java四种权限修饰符 (private 、default(缺省)、prote、public)适用范围
验证测试
(1)定义一个order 类 ,其中包涵四种权限修饰符属性 以及方法
private int orderPrivate; int orderDefault; protected int orderProtect; public int orderPublic;
如;
d
package day07;/*** @author chao* @create -05-2022-05-31-14:58*/
public class Order {private int orderPrivate;int orderDefault;protected int orderProtect;public int orderPublic;private void methodPrivate(){orderPrivate=1;orderDefault=2;orderProtect=3;orderPublic=4;}void methodDefault(){orderPrivate=1;orderDefault=2;orderProtect=3;orderPublic=4;}protected void methodProtect(){orderPrivate=1;orderDefault=2;orderProtect=3;orderPublic=4;}public void methodPublic(){orderPrivate=1;orderDefault=2;orderProtect=3;orderPublic=4;}
}
(2)同一个包进行测试
测试一
package day07;
package day07;/*** @author chao* @create -05-2022-05-31-15:02*/
public class OrderTest {public static void main(String[] args) {Order order=new Order();order.orderPublic=1;order.orderProtect=2;order.orderDefault=3;//出了Oder类 ,私有结构不可以被调用// order.orderPrivate=3;//属性不可见,无法调用//order.methodPrivate(); //方法也不可以调用order.methodDefault();order.methodProtect();order.methodPublic();}
}
结论:可以发现同一个包,但是出了Oder类 ,无法使用Private 结构和属性
(3)测试二
在不同包进行测试 ,但是该测试继承了Order
package day28;import day07.Order;/*** @author chao* @create -05-2022-05-31-15:25*/
public class SubOrder extends Order {public void method(){orderPublic=1;orderProtect=2;methodPublic();methodProtect();//在不同包的子类中,不能调用oder类中声明为private和 缺省结构和属性// orderPrivate=3;
// orderDefault=4;
//
// methodPrivate();
// methodDefault();}
}
结论:在不同的包中,存在继承关系 时,不能够调用 Order类声明的private 和 default缺省结构和属性
(4)测试三
在不同包并且没有继承关系
package day06;import day07.Order;/*** @author chao* @create -05-2022-05-31-15:09*/
public class OrderTest {public static void main(String[] args) {Order order=new Order();order.orderPublic=1;order.methodPublic();//不同包下也不是子类 没有继承Order 不能调用protect 属性结构和方法
// order.orderProtect=2;
// order.methodProtect();//出了day07包 ,在day06包使用default结构无法使用// order.orderDefault=2;//can not be accessed from outside package//出了Oder类 ,私有结构不可以被调用// order.orderPrivate=3;//属性不可见,无法调用//order.methodPrivate(); //方法也不可以调用// order.methodDefault();//can not be accessed from outsi}
}
结论:在不同的包,也不具有继承关系时 ,只能直接调用 Order类中声明为public的属性 与结构
(5)测试四;
当出了同一个模块,在不同模块调用Order类时,
此时创建对象直接提示报错 ,提示Add dependency on module "day04",此时无法使用order类
,此时需要用到jdk9新特性 中的模块化系统 ,使用模块依赖才能使用Oder类。
总结:(1)出了当前类 :无法使用private修饰符修饰的属性与结构
(2) 出了同一个包,但具有继承关系 ;无法使用 privateh和 default修饰符修饰的属性与结构
(3)出了同一个包,并且无继承关系 只能使用 public修饰符修饰的属性与结构
(4)出了同一模块 即无法使用 Order ,无法创建Order对象
java四种权限修饰符 (private 、default(缺省)、prote、public)适用范围相关推荐
- Java 四种权限修饰符
Java 四种权限修饰符访问权限 public protected (default) private 同一个类(我自己) yes yes yes yes 同一包(我邻居) yes yes yes n ...
- java四种访问修饰符
访问修饰符 public,private,protected,以及不写(默认)时的区别: 定义:Java中,可以使用访问修饰符来保护对类.变量.方法和构造方法的访问.Java 支持 4 种不同的访问权 ...
- final关键字概念及其四种用法、四种权限修饰符的优先级以及内部类的相关概念
一.final关键字代表最终.不可改变的. 常见的四种用法: ①.可以用来修饰一个类. ②.可以用来修饰一个方法. ③.还可以用来修饰一个局部变量. ④.还可以用来修饰一个成员变量. (1).修饰一个 ...
- Java 四种访问修饰符区别_四种访问修饰符的区别
在Java编程语言中有四种权限访问控制符,这四种访问权限的控制符能够控制类中成员的可见性. 一.public (1)定义:public是公共的,被public所修饰的成员可以在任何类中都能被访问到. ...
- 【Java笔记】四种权限修饰符总结
能否访问 public > protected > (default 不写) > private 同一个类(我自己) ...
- Java中的四种访问修饰符:public、default、protect和private
前言 Java中有四种访问修饰符用于控制类.接口.变量和方法的封装程度.这四种修饰符分别为: private 私有的,类可见性 package/friendly/default 包级别的/友好的/默认 ...
- java的四个访问修饰符_Java中的四种访问修饰符
Java中修饰符分为两种:访问修饰符和非访问修饰符.修饰符中,有一些修饰符可以既可以修饰类,也可以修饰方法,但是有一些修饰符只能修饰符方法. 今天这篇文章先介绍一下四种访问修饰符. 1.private ...
- JAVA的四种访问修饰符
JAVA中的访问修饰符,主要用于设置类.属性.方法的访问级别,有以下四种: 修饰符 同一个类 同一个包 子类 任何地方 public(公共的) Y Y Y Y protected(受保护的) Y Y ...
- java中有哪些访问修饰符_java中四种访问修饰符
Java中的四种访问修饰符:public.protected.default(无修饰符,默认).private. 四种修饰符可修饰的成分(类.方法.成员变量) public protected def ...
最新文章
- Mac环境下Docker及Splash的安装运行教程
- 就业模拟试题1_答案
- Maven解决jar包版本冲突
- python编程软件排行榜_Python编程开发工具:这10个对Web开发者最有用的Python包
- [转载] Python中str跟int的转换
- 使用libcurl进行HTTP PUT
- python改变默认编码
- 暴力破解WiFi密码
- c语言成绩管理系统1.0,c语言成绩管理系统完整附源码v1.0 免费版
- c语言智能车跑道检测程序,智能小车的循迹方法与流程
- Python爬虫入门案例
- 关于NLPIR在MAC上的使用
- 如何写好项目规划和方案设计文档
- 弗兰克·盖里为华纳兄弟设计新总部,犹如漂浮在高速公路的‘冰山’
- 阿里达摩院(研究型实习生)
- Java获取国内手机号码归属地
- 阿里总参谋长曾鸣:区块链中没有绝对的“去中心化”
- 微信小程序---实现VR看房效果
- 为什么定义补码等于反码加一,知其所以然
- Nessus 安装文件和详细教程(kali系统,附网盘下载链接)
热门文章
- 国内网页无法加载reCAPTCHA解决方案
- 锂电池的正确使用:标称容量、存储条件及充放电
- 51单片机c语言除法符号,51单片机之C语言-4.4运算符及表达式
- AES128加密-S盒和逆S盒构造推导及代码实现
- c语言编程电机星三角启动,三相异步电动机星三角减压启动控制plc编程实例
- 疫情后推动出行即服务
- IFNULL()函数、CONCAT()函数、IF()函数、YEAR()函数、DATE_FORMAT()函数、LENGTH()函数、NOW()函数、CURDATE()函数、CURTIME()函数基本使用
- 一文读懂Jina生态的Dataclass
- 北大计算机科学系王腾蛟,本系简介
- 读《熵减 华为活力之源》