Java Silver 学习备忘录
首先
我想要记录下一些勉强的笔记,如果有错误的话请告诉我,将不胜感激。
我会随时进行更新。
如果存在同名的局部变量和字段
如果存在同名的局部变量和字段, 如果不使用”this”明确表示它是字段, 那么局部变量将被优先使用。因此, 在下面的示例中, 即使执行了test方法, num字段的值也不会被改变。
public class Main {
private static int num;
// static初期化子
static {
num = 10;
}
static {
num = 20;
}
static void test(int num) {
num = num * num; // ここで参照しているnumは引数のnum
}
public static void main(String[] args) {
test(num);
System.out.println(num); // 20
}
}
关于访问修饰符
修飾子説明publicすべてのクラスからアクセス可能protected同じパッケージに属するか、継承しているサブクラスからのみアクセス可能なし(デフォルト)同じパッケージに属するクラスからのみアクセス可能privateクラスないからのみアクセス可能
尽管protected还接受来自同一包中的类的访问,它与超类位于不同包中的子类的访问不同。
protected可以从不同包中的子类访问,但如果没有访问修饰符,即使是子类,也无法从属于不同包的类中访问。