67,515
社区成员
发帖
与我相关
我的任务
分享
public class BaseClass {
// 父类原有的变量和方法此处略去
// 在父类原有代码最后添加这两行
private static class LazyHolder {
private static final BaseClass INSTANCE = new BaseClass();
}
static public BaseClass getInstance() {
return LazyHolder.INSTANCE;
}
}
然后所有需要调用父类的方法你都可以这么来:// 获取父类唯一实例
BaseClass base = BaseClass.getInstance();
// 调用父类方法
base.method();
任何地方第一次调用 getInstance() 时,才会 new 一个对象,不常驻内存。
并且,从第二次开始,任何 getInstance() 都始终获得同一个相同的对象。