Jin*_*iel 7 java static static-classes
请考虑以下代码
class A {
    static class B{
        int a = 0;
    }
    public static void main(String argc[]) {
        B var1 = new B();
        B var2 = new B();
        var1.a = 5;
        var2.a = 6;
        System.out.println(var1.a+" and "+var2.a);
    }
}
它输出5和6.静态成员只加载一次.但输出与该语句相矛盾.所以静态类的概念肯定与静态数据成员不同.那么静态类的静态意味着什么
Fra*_*ank 10
来自oracle的复制粘贴:
静态嵌套类
与类方法和变量一样,静态嵌套类与其外部类相关联.和静态类方法一样,静态嵌套类不能直接引用其封闭类中定义的实例变量或方法 - 它只能通过对象引用来使用它们.
注意:静态嵌套类与其外部类(和其他类)的实例成员交互,就像任何其他顶级类一样.实际上,静态嵌套类在行为上是一个顶级类,它已嵌套在另一个顶级类中以方便打包. 使用封闭的类名访问静态嵌套类:
OuterClass.StaticNestedClass
例如,要为静态嵌套类创建对象,请使用以下语法:
OuterClass.StaticNestedClass nestedObject =
     new OuterClass.StaticNestedClass();
一个例子:
LinkedList.Entry或Map.Entry不需要是顶级类,因为它仅由LinkedList aka Map使用.而且由于它们不需要访问外部类成员,因此它是静态的 - 这是一种更清晰的方法.