gpt4 book ai didi

java - 为什么下面的 java 代码没有产生错误? (访问修饰符)

转载 作者:行者123 更新时间:2023-11-29 09:41:21 24 4
gpt4 key购买 nike

class SomeClass1 {
void method1() { }
public void method2() { }
private void method3() { }
protected void method4() { }
}
class DemoClass{
public static void main(String[] parameters) {
SomeClass1 sc = new SomeClass1();
sc.method1();
sc.method2();
sc.method4();
}
}

protected 方法只能由继承父类(super class)的类访问。正如我们在这里看到的,DemoClass 没有扩展 SomeClass。但是,它仍然能够访问 protected 方法。这怎么可能?

最佳答案

那是因为它们在同一个包中:

The protected modifier specifies that the member can only be accessed within its own package (as with package-private) and, in addition, by a subclass of its class in another package.

(Link to the documentation)。

关于java - 为什么下面的 java 代码没有产生错误? (访问修饰符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14927997/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com