static声明内部类
静态内部类是指在一个类的内部,又定义了一个用static修饰的类。它可以不依赖于外部类实例对象而被实例化,但他不能访问外部类的普通成员变量和普通成员方法,只能访问外部类的static成员(包括私有类型)。 一个没有被static修饰的内部类,必须要这么声明。
/**
* 延迟加载方式==懒汉模式
* 使用双检测机制,尽量减小同步块的大小,同时保证线程安全
*/
public class Test {
private Test() {}
private volatile static Test uniqueInstance;
public static Test getInstance() {
if (uniqueInstance == null) {
synchronized (Test.class) {
if (uniqueInstance == null) {
uniqueInstance = new Test();
}
}
}
return uniqueInstance;
}
}
说明:
注意:若在static变量前用private修饰,则表示这个变量只能在本类中的静态代码块或者静态成员方法使用,而不能通过类名直接引用。
OutterClass.InnerClass innerClass = new OutterClass().new InnerClass();
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。