先上代码:
1 public abstract class GlobalAdvisorAdapterRegistry { 2 3 /** 4 * Keep track of a single instance so we can return it to classes that request it. 5 */ 6 private static final AdvisorAdapterRegistry instance = new DefaultAdvisorAdapterRegistry(); 7 8 /** 9 * Return the singleton DefaultAdvisorAdapterRegistry instance. 10 */ 11 public static AdvisorAdapterRegistry getInstance() { 12 return instance; 13 } 14 15 }
1.配置了一个静态的final变量instance, 静态修饰 代表 这个对象是在类加载的时候就成的。final修饰 代表这个对象引用创建后不能被变更。
2.GlobalAdvisorAdapterRegistry 是抽象类,不能被实例化,这样就保证了instance对象的唯一性。
3.在使用这个instance时候,也是通过一个静态方法getInstance()来完成的,就保证了这个instance唯一对象的获取。