Java Access Modifiers - 受保护类中的公共函数/变量

时间:2016-02-14 14:26:17

标签: java class access-modifiers

美好的一天,

如果我的课程有点像这样:

public class A {
        protected class B {
                public int element;
                public int get() {
                        return i;
        }
}
public class C {
        foo();
}
public class D extends A {
        foo();
}

1.Cold中的foo(),访问元素和get()?或者只能D级访问它们?

  1. 如果B类是私有的,可以C访问元素和get()吗?

1 个答案:

答案 0 :(得分:0)

只有D,B级受到保护,C才能访问B类。

但是,你必须在D中实例化B以调用get()并获取i,因为get是一个实例方法。

如果B是私有的,那么C和D都不能访问B.