Class 非静态内部类在Java中扩展静态内部类时会发生什么?
我试图理解java继承在如此复杂的场景中是如何工作的: 非静态内部类在Java中扩展静态内部类时会发生什么情况?Class 非静态内部类在Java中扩展静态内部类时会发生什么?,class,inheritance,static,Class,Inheritance,Static,我试图理解java继承在如此复杂的场景中是如何工作的: 非静态内部类在Java中扩展静态内部类时会发生什么情况? package edu.nraj; public class Test { public int outerVar = 0; public static int staticVar = 1; public static class MyStaticClass { public int innerVar = 0;
package edu.nraj;
public class Test {
public int outerVar = 0;
public static int staticVar = 1;
public static class MyStaticClass {
public int innerVar = 0;
public void print() {
System.out.println(staticVar);
}
}
public class MyStaticSubClass extends MyStaticClass {
public void printMe() {
System.out.println(outerVar);
System.out.println(staticVar);
System.out.println(innerVar);
}
}
}
这个错误是什么意思?它是否使非静态内部类也成为静态的,因为它能够引用静态成员和非静态成员?
package edu.nraj;
public class Test {
public int outerVar = 0;
public static int staticVar = 1;
public static class MyStaticClass {
public int innerVar = 0;
public void print() {
System.out.println(staticVar);
}
}
public class MyStaticSubClass extends MyStaticClass {
public void printMe() {
System.out.println(outerVar);
System.out.println(staticVar);
System.out.println(innerVar);
}
}
}