Java 如何创建依赖类的单例实例?
我对模式和使用模式有点陌生 我想配置一个依赖类的对象,比如说a。一次,然后在我的应用程序中使用它。我试着在它上面创建一个单例包装器类,但失败得很惨。我试过这样的方法:Java 如何创建依赖类的单例实例?,java,design-patterns,singleton,Java,Design Patterns,Singleton,我对模式和使用模式有点陌生 我想配置一个依赖类的对象,比如说a。一次,然后在我的应用程序中使用它。我试着在它上面创建一个单例包装器类,但失败得很惨。我试过这样的方法: public class B { public static A a = new A(); public static A getInstance() { return a; } private B() { a.configure(); } } 我认为调用B.getInstance
public class B {
public static A a = new A();
public static A getInstance() {
return a;
}
private B() {
a.configure();
}
}
我认为调用B.getInstance不会在这里配置对象。我想在这里配置A的实例一次,然后在任何地方都使用它。基本上你的单例类是B,对吗?在示例代码中,您对内部A使用了单例模式,这没有多大意义 根据我的理解,你应该这样做:
public class B {
private static B _instance;
public static B getInstance() {
if (_instance == null) {
_instance = new B(new A());
}
return _instance;
}
private A _a;
private B (A a) {
_a = a;
_a.configure();
}
}
但这并没有给我一个权利的例子?我想配置类A并获取其实例。如果我的问题不太清楚,那我就不好了。然后在B中添加一个方法,比如getA{return\u a;}好的,这样看起来很有效。。。谢谢@Ash,希望这对其他人有用。public类B{private static B{u instance;private static A A A=new A;private static void init{if{u instance==null{{{u instance=new Ba;}}}public static A getInstance{u instance.init;返回A;}private B A{u A=A;_A.configure;}