มี สามารถกำหนดคอนสตรัคเตอร์ได้มากกว่าหนึ่งตัว ในชั้นเรียน สิ่งนี้เรียกว่าการโอเวอร์โหลดคอนสตรัคเตอร์ โดยปกติจะมีตัวสร้างที่ไม่มีพารามิเตอร์ (ไม่มีสิ่งใดในวงเล็บตามชื่อของตัวสร้าง) เช่นเดียวกับตัวสร้างโลกด้านบน สิ่งนี้เรียกว่าคอนสตรัคเตอร์ที่ไม่มีอาร์กิวเมนต์
มีตัวสร้างกี่ตัวในชั้นเรียน
พูดตามตรง รูปแบบไฟล์คลาส JVM จำกัดจำนวนวิธี (รวมถึงตัวสร้างทั้งหมด) สำหรับคลาสให้น้อยกว่า 65536 และตาม Tom Hawtin ขีดจำกัดที่มีผลคือ 65527. แต่ละวิธีลายเซ็นตรงบริเวณช่องในกลุ่มคงที่
ชั้นเรียนมีตัวสร้างหลายตัวได้ไหม
เทคนิคการมีคอนสตรัคเตอร์สองตัว (หรือมากกว่า) ในคลาสเรียกว่าคอนสตรัคเตอร์โอเวอร์โหลด คลาสสามารถมีคอนสตรัคเตอร์ได้หลายตัว ที่แตกต่างกันในจำนวนและ/หรือประเภทของพารามิเตอร์ อย่างไรก็ตาม เป็นไปไม่ได้ที่จะมีตัวสร้างสองตัวที่มีพารามิเตอร์เหมือนกันทุกประการ
เรามีตัวสร้างมากกว่าหนึ่งตัวในชั้นเรียนใน C ได้ไหม
ใน C++ เราสามารถมีตัวสร้างมากกว่าหนึ่งตัวในชั้นเรียนที่มีชื่อ same ตราบใดที่แต่ละรายการมีรายการอาร์กิวเมนต์ต่างกัน แนวคิดนี้เรียกว่า Constructor Overloading และค่อนข้างคล้ายกับฟังก์ชันโอเวอร์โหลด
เรียกช่างก่อสร้างได้ไหม
เรียกตัวสร้างจากเมธอด
ไม่ คุณไม่สามารถเรียกตัวสร้างจากวิธีการ ที่เดียวที่คุณสามารถเรียกใช้ Constructor โดยใช้ "this" หรือ "super" คือบรรทัดแรกของ Constructor อื่น หากคุณพยายามเรียกใช้คอนสตรัคเตอร์ในที่อื่นอย่างชัดแจ้ง จะเกิดข้อผิดพลาดในการคอมไพล์ขึ้น