public 可以访问类内的所有成员吗(访问控制protected是不同包中对子类可见)
以下例子说明:protected是不同包中对子类可见,对非子类不可见 马克- to-win:马克 java社区:防盗版实名手机尾号: 73203例1.2.2.a:---本例为正常用法package p1;public class A {protected int i;protected void printIProtected() {System.out.println("i=" i);}}package p2;import p1.A;class B extends A {void printIInB() {System.out.println("in B i=" i);//protected是不同包中对子类(Test)可见,马 克-t o-w i nprintIProtected();}}public class Test {public static void main(String[] args) {A a=new A();// a.i=7;//报错, 注意这里不能直接用// a.printIProtected();//报错, 注意这里不能直接用B b = new B();// b.i = 10;//报错,Test不是A子类,非子类不能访问protected// b.printIProtected();//报错,Test不是A子类,非子类不能访问protectedb.printIInB();}}结果:in B i=0i=0例1.2.2.b:---本例为非正常用法,通常不直接访问protected方法比如b.printIProtected();package p1;public class A {protected int i;protected void printIProtected() {System.out.println("i=" i);}}package p2;import p1.A;public class Test extends A {void printIInB() {,我来为大家科普一下关于public 可以访问类内的所有成员吗?以下内容希望对你有帮助!
public 可以访问类内的所有成员吗
以下例子说明:protected是不同包中对子类可见,对非子类不可见。 马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。例1.2.2.a:---本例为正常用法。package p1;public class A {protected int i;protected void printIProtected() {System.out.println("i=" i);}}package p2;import p1.A;class B extends A {void printIInB() {System.out.println("in B i=" i);//protected是不同包中对子类(Test)可见,马 克-t o-w i nprintIProtected();}}public class Test {public static void main(String[] args) {A a=new A();// a.i=7;//报错, 注意这里不能直接用// a.printIProtected();//报错, 注意这里不能直接用B b = new B();// b.i = 10;//报错,Test不是A子类,非子类不能访问protected// b.printIProtected();//报错,Test不是A子类,非子类不能访问protectedb.printIInB();}}结果:in B i=0i=0例1.2.2.b:---本例为非正常用法,通常不直接访问protected方法。比如b.printIProtected();package p1;public class A {protected int i;protected void printIProtected() {System.out.println("i=" i);}}package p2;import p1.A;public class Test extends A {void printIInB() {
篇幅有限更多请见扩展链接:http://www.mark-to-win.com/tutorial/java_3_ProtectedIsVisibleDifferentPackageSubclass.html
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com