您的位置 首页 java

Java中的访问控制修饰符及相应的访问权限

今天看视频教程说的是封装,这个概念太大了,自己也没太明白,讲不了。就说说里面谈到的 访问控制 修饰符吧!

一般的说Java的访问控制修饰符是四个,分别是:public(公开的)、 protected (受保护的)、不带修饰符和private(私有的)。它们各自的访问权限我做了个表格: Java中的访问控制修饰符及相应的访问权限

下面举个例子来简单说明,希望能够说明白了。

Java中的访问控制修饰符及相应的访问权限

我建了两个包xiaowang、xiaozhang然后各自建了两个class。Wang1中我定义了几个变量 Java中的访问控制修饰符及相应的访问权限

Wang2是Wang1同一个包的类,我把它理解为兄弟,可以访问road、father、house而wife是不能让你直接访问的,要访问wife必须由Wang1来指定方法。 Java中的访问控制修饰符及相应的访问权限

访问wife时出错了,private 同包也不能访问。但可以通过Wang1提供的get方法来访问。

Java中的访问控制修饰符及相应的访问权限

不在同个包里的Zhang1受到的限制就更多了。除public外其他的都不能访问。

Java中的访问控制修饰符及相应的访问权限

不在同个包,但是继承了Wang1的访问权限略大,protected可以继承了。这里有个比较奇怪的现象,如果子类和父类在同个包里,缺省修饰符是可以被继承的,什么原因就不晓得了。

Java中的访问控制修饰符及相应的访问权限

是不是,继承缺省修饰符的father时没有报错!看来继承的时候,只要能访问,就能被继承的!

另外,昨天说的 static 关键字有热心的网友说遗漏了static代码块,今天学习并补充。 Java中的访问控制修饰符及相应的访问权限

调用Dog时是没有反应的,但是我调用Cat它立马会执行,优先级极高。 Java中的访问控制修饰符及相应的访问权限

是不是还在static方法之前执行的啊,而且它只执行一次,通常用它来对static变量赋值用的。

文章来源:智云一二三科技

文章标题:Java中的访问控制修饰符及相应的访问权限

文章地址:https://www.zhihuclub.com/177169.shtml

关于作者: 智云科技

热门文章

网站地图