[我只是检查内部类,我知道我们可以对私有和静态内部类进行声明,但是我不理解通过声明私有和静态内部类可以实现什么。
class OuterClass {
private static class InnerClass{
}
}
由于此类是私有的,因此其他任何类都不能访问InnerClass,所以我认为Static无法帮助。
是否只是为了简化Java语言而允许
通过将其设为静态,您无需使用任何对象。外部类中的其他代码仍然可以使用它,例如静态方法。
尽管Elliot Sir和Sambit给出了提示,但我在下面提供了使用私有静态内部类的地方。我们可以创建一个Singleton类,该类是线程安全的和不变的aslo。
public class Singleton {
private static class Holder {
public static final Singleton instance = new Singleton();
}
public static Singleton getInstance() {
return Holder.instance;
}
}