ไม่ คอนสตรัคเตอร์ ไม่สามารถซิงโครไนซ์ได้ ในชวา JVM ทำให้แน่ใจว่ามีเพียงเธรดเดียวเท่านั้นที่สามารถเรียกใช้การเรียกตัวสร้าง ณ เวลาที่กำหนด นั่นคือเหตุผลที่ไม่จำเป็นต้องประกาศตัวสร้างเป็น ซิงโครไนซ์และ มันคือ illegal ในชวา อย่างไรก็ตาม เราสามารถใช้บล็อกที่ซิงโครไนซ์ได้ ภายในตัวสร้าง
หากเรากำลังพยายามใส่ ซิงโครไนซ์ คำหลัก หน้าคอนสตรัคเตอร์ คอมไพเลอร์บอกว่า "ข้อผิดพลาด:ไม่อนุญาตให้ตัวแก้ไขซิงโครไนซ์ที่นี่ ".
ตัวอย่าง
public class SynchronizedConstructorTest { // declaration of synchronized constructor public synchronized SynchronizedConstructorTest() { System.out.println("Synchronized Constructor"); } public static void main(String args[]) { SynchronizedConstructorTest test = new SynchronizedConstructorTest(); } }
ผลลัพธ์
SynchronizedConstructorTest.java:3: error: modifier synchronized not allowed here public synchronized SynchronizedConstructorTest() { ^ 1 error