核心
通過設置構造函數爲私有,且成員變量爲自己的靜態類實例來控制某類的實例只能爲一個。
實現
class singleVV{
private static singleVV viviChou = new singleVV();//可以設置爲private,也可以不用。
private singleVV(){//構造函數一定要設置爲private,使得不可以通過new生成對象
System.out.println("generate");
}
public static singleVV getObj(){
return viviChou;
}
}
public class Main {
public static void main(String[] args) {
singleVV vv1 = singleVV.getObj();
singleVV vv2 = singleVV.getObj();
if (vv1.equals(vv2)){
System.out.println("vv only");
}else{
System.out.println("vv not only");
}
return;
}
}
輸出
generate
vv only
作用
控制某個類只有一個類實例。
優點
控制類的實例都是同一個。
缺點
實用場景不多。