私は次のコードnullを返す静的メソッドから静的変数を呼び出すのがなぜNPEをスローしないのですか?
public class Test {
static String mountain = "Everest";
static Test favorite() {
System.out.print("Mount ");
return null;
}
public static void main(String[] args) {
System.out.println(favorite().mountain);
}
}
を持っている私はそれがNPE
を上げるだろうと思ったけど、誰もが明確にすることができ、それは、出力としてMount Everest
を与えていますか?
C#についての素晴らしいことは、クラスではなくインスタンスから '山'にアクセスしているのでコンパイルできないということです(ここで火炎を始めるのではなく、ただコメントしてください) –