我正在运行一个测试程序以了解有关成员变量可见性的更多信息,并创建了以下3个类:
ParentClass.java
public class ParentClass {
protected int mMember;
}
ChildClass.java
public class ChildClass extends ParentClass {
ChildClass() {
mMember = 10;
}
}
ChildChildClass.java
public class ChildChildClass extends ChildClass {
ChildChildClass() {
mMember = 5;
}
}
ChildChildClass
的mMember
变量的访问级别是多少?是公开的还是受保护的? 最佳答案
与C ++不同,它将保持受保护的状态,在C ++中,根据继承类型(公共,受保护或私有),它保持不变。
C ++允许这种继承的主要原因是它支持多重继承。但是,Java不支持它。因此,它只是通过保持超类中的访问级别来简化它。