马克社区吧 关注:483贴子:445
  • 0回复贴,共1

Java的访问控制中默认,public,private,protected什么区别?

只看楼主收藏回复

Java的访问控制机制说明:1.任何声明为public的内容可以被从任何地方访问。 2.被声明成private的成员不能被该类外看到。 3.如果一个成员不含有一个明确的访问说明,马克-to-win,它只对同包可见, 不同包不可见。这是默认访问。 4.protected是同包都可见,且子类都可见。
以下就上表中的一些难于理解的知识点给出实例进行分析:

2.1 以下例子说明:1)子类可以访问protected 2)同一包中非子类(Test)可以访问protected。
you can use protected to access the value in the super class.
例1.2.1
class AMark {
protected int i;
public void printI() {
System.out.println("i=" + i);
}
}

class B extends AMark {
public void printIInB() {
System.out.println("in B i=" + i);//子类可以访问protected
}
}

public class Test {
public static void main(String[] args) {
。。。。。。。。。。。
详情请见:http://www.mark-to-win.com/JavaBeginner/JavaBeginner3_web.html#InheritanceAccessControl