1. รายการ Java Concurrency ในทางปฏิบัติ
คัดลอกรหัสรหัสดังต่อไปนี้:
คลาสสาธารณะซิงเกิลตัน {
SingletonHolder คลาสคงที่ส่วนตัว {
ทรัพยากร Singleton คงที่สาธารณะ = Singleton ใหม่ ();
-
สาธารณะ getResource เดี่ยวแบบคงที่ () {
กลับ SingletonHolder.resource;
-
ซิงเกิลตันส่วนตัว () {
-
-
2. Java ที่มีประสิทธิภาพ
คัดลอกรหัสรหัสดังต่อไปนี้:
คลาสสาธารณะซิงเกิลตัน {
Singleton สุดท้ายแบบคงที่สาธารณะ INSTANCE = new Singleton ();
ซิงเกิลตันส่วนตัว(){}
วิธีการเป็นโมฆะสาธารณะ () {
-
-
โมฆะคงที่สาธารณะ main (สตริง [] a) {
//วิธีการโทร.
ซิงเกิลตัน INSTANCE.method();
-
-
3. ใช้การแจงนับเพื่อสร้างอินสแตนซ์เดียวอย่างชาญฉลาด
คัดลอกรหัสรหัสดังต่อไปนี้:
-
* ใช้การแจงนับเพื่อสร้างอินสแตนซ์เดียวอย่างชาญฉลาด
-
สาธารณะ enum ซิงเกิลตัน {
ตัวอย่าง;
วิธีการเป็นโมฆะสาธารณะ () {
-
-
โมฆะคงที่สาธารณะ main (สตริง [] a) {
//วิธีการโทร.
ซิงเกิลตัน INSTANCE.method();
-
-
4. ล็อคสองชั้น
คัดลอกรหัสรหัสดังต่อไปนี้:
คลาสสาธารณะซิงเกิลตัน {
อินสแตนซ์ Singleton ระเหยคงที่ส่วนตัว = null;
-
* ป้องกันไม่ให้ผู้อื่นจากวัตถุใหม่
-
ซิงเกิลตันส่วนตัว () {
System.out.println("init");
-
สาธารณะ Singleton getInstance () {
ถ้า (อินสแตนซ์ == null){
ซิงโครไนซ์ (Singleton.class) {
ถ้า (อินสแตนซ์ == null){
อินสแตนซ์ = ซิงเกิลตันใหม่ ();
-
-
-
ส่งคืนอินสแตนซ์;
-
-