Java多级继承 – 1级类中受保护的实例变量
发布时间:2020-12-15 02:04:51 所属栏目:Java 来源:网络整理
导读:我有一个问题属于 Java中的多级继承.所有三个类都在同一个包中 我有A班: public class A { protected int x;}public class B extends A { public void doSomething { // x is visible.agreed,as it is a direct subclass of A } }public class C extends B
我有一个问题属于
Java中的多级继承.所有三个类都在同一个包中
我有A班: public class A { protected int x; } public class B extends A { public void doSomething { // x is visible.agreed,as it is a direct subclass of A } } public class C extends B { public void doSomething { // x is still visible,how come? I mean it is at the 2nd level // I am confused why? } } 它有什么意义吗?或者是默认情况下我们必须采取的行为? 解决方法
标记为protected modifier的变量/方法对同一个pacakage中的所有类都是可见的,并且只对不同包中的子类可见.
以下是示例案例. package a; class A{ protected int x; } class B extends A{ //x can be accessed from this class } class C extends B { //x can be accessed from this class } class D{ //x can be accesed this class but you will have to create A's instance } package B class One { //cannot access x from this class } class Two extends A { //can access x from this class } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |