Java中内部类单例的作用域是什么?

Java中内部类单例的作用域是什么?,java,singleton,inner-classes,Java,Singleton,Inner Classes,Java中内部类单例的作用域是什么? 我想要一个里面有一个像独生子女一样的班级, 但外部类的每个实例都应该有自己的内部类实例。(我知道这不是一种好的代码风格,但我需要将所有内容打包到一个类中以进行此设置。) 提前谢谢 如果将内部类声明为private,并在每次创建外部类时创建一个实例,则每个外部类实例都将有一个内部类实例 这不是单例模式 差不多吧 public class MyOuter { private MyOuter.MyInner inner; public MyOut

Java中内部类单例的作用域是什么? 我想要一个里面有一个像独生子女一样的班级, 但外部类的每个实例都应该有自己的内部类实例。(我知道这不是一种好的代码风格,但我需要将所有内容打包到一个类中以进行此设置。)
提前谢谢

如果将内部类声明为private,并在每次创建外部类时创建一个实例,则每个外部类实例都将有一个内部类实例

这不是单例模式

差不多吧

public class MyOuter {
    private MyOuter.MyInner inner;

    public MyOuter() {
        inner = new MyOuter.MyInner();
    }

    ...

    private static class MyInner {
        ....
    }
}

那就不是单身了。这主意不错。单身没有什么好理由。这听起来是个坏主意,源于糟糕的设计。也许你退一步,试着找到其他方法来解决你试图解决的真正问题。确切地说,这不是关于糟糕的代码风格,而是关于糟糕的设计。