ความแตกต่างและตัวอย่างรหัสของบล็อกรหัสทั่วไปบล็อกรหัสที่สร้างขึ้นบล็อกรหัสคงที่ใน Java
// คำสั่งดำเนินการ: (ลำดับความสำคัญจากสูงถึงต่ำ) บล็อกรหัสคงที่> เมธอด MIAN> สร้างบล็อกรหัส> วิธีการสร้าง
บล็อกรหัสคงที่จะดำเนินการเพียงครั้งเดียว บล็อกรหัสที่สร้างขึ้นจะดำเนินการทุกครั้งที่วัตถุถูกสร้างขึ้น
1 บล็อกรหัสปกติ
// บล็อกรหัสสามัญ: {} ที่ปรากฏในเมธอดหรือคำสั่งเรียกว่าบล็อกรหัสปกติ ลำดับการดำเนินการของบล็อกรหัสสามัญและคำสั่งทั่วไปถูกกำหนดโดยลำดับที่ปรากฏในรหัส - "ปรากฏตัวครั้งแรกก่อน" คลาสสาธารณะ codeblock01 {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {{int x = 3; System.out.println ("1, ตัวแปร x ="+x); } int x = 1; System.out.println ("ตัวแปร x ="+x); {int y = 7; System.out.println ("2, ตัวแปร y ="+y); }}} / * ผลการรัน: 1, ตัวแปร x = 3 ในตัวแปรบล็อกปกติ x = 1 2, ตัวแปร y = 7 ในตัวแปรรหัสปกติตัวแปร y = 7 * /2 การสร้างบล็อกรหัส
// block constructor: บล็อกรหัสที่กำหนดโดยตรงในคลาสและไม่มีคำหลักคงที่เรียกว่าบล็อกรหัสการก่อสร้าง {} บล็อกรหัสคอนสตรัคเตอร์ถูกเรียกเมื่อสร้างวัตถุและทุกครั้งที่วัตถุถูกสร้างขึ้นจะถูกเรียกและลำดับการดำเนินการของบล็อกรหัสคอนสตรัคเตอร์จะมีความสำคัญเหนือกว่าตัวสร้างคลาส คลาสสาธารณะ codeblock02 {{system.out.println ("บล็อกรหัสแรก"); } public codeblock02 () {system.out.println ("วิธีการก่อสร้าง"); } {System.out.println ("Second Constructor Block"); } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {ใหม่ codeblock02 (); ใหม่ codeblock02 (); ใหม่ codeblock02 (); }} /** ผลการดำเนินการ: บล็อกแรกบล็อกตัวสร้างตัวสร้างที่สองวิธีการก่อสร้างบล็อกแรกบล็อกตัวสร้างที่สองบล็อกวิธีการก่อสร้างรหัสแรกบล็อกตัวสร้างที่สองบล็อกวิธีการก่อสร้าง* / /3 บล็อกรหัสคงที่
// บล็อกรหัสคงที่: บล็อกรหัสประกาศโดยใช้คำหลักคงที่ใน Java บล็อกคงที่ใช้ในการเริ่มต้นคลาสและเริ่มต้นแอตทริบิวต์ของคลาส แต่ละบล็อกรหัสคงที่จะถูกเรียกใช้งานเพียงครั้งเดียว เนื่องจาก JVM ดำเนินการบล็อกรหัสสแตติกเมื่อโหลดคลาสบล็อกรหัสคงที่จะดำเนินการก่อนวิธีการหลัก // หากคลาสมีบล็อกสแตติกหลายบล็อกมันจะตามมาด้วย "รหัสที่กำหนดไว้ก่อนจากนั้นกำหนดรหัสในภายหลัง" // หมายเหตุ: 1 บล็อกรหัสคงที่ไม่สามารถมีอยู่ในร่างกายวิธีการใด ๆ 2 บล็อกรหัสสแตติกไม่สามารถเข้าถึงตัวแปรอินสแตนซ์คงที่และวิธีการอินสแตนซ์โดยตรงและจำเป็นต้องเข้าถึงผ่านวัตถุอินสแตนซ์ของคลาส รหัสคลาส {{system.out.println ("ตัวสร้างรหัส"); } คงที่ {system.out.println ("ตัวสร้างรหัส"); } รหัสสาธารณะ () {system.out.println ("ตัวสร้างรหัส"); }} คลาสสาธารณะ codeblock03 {{system.out.println ("ตัวสร้างของ codeblock03"); } คงที่ {system.out.println ("ตัวสร้างของ codeblock03"); } public codeblock03 () {system.out.println ("วิธีการสร้างของ codeblock03"); } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {system.out.println ("วิธีการหลักของ codeblock03"); รหัสใหม่ (); รหัสใหม่ (); ใหม่ codeblock03 (); ใหม่ codeblock03 (); }}/ *codeblock03 รหัสสแตติกบล็อก codeblock03 วิธีหลักรหัสรหัสสแตติกรหัสบล็อกรหัสตัวสร้างรหัสตัวสร้างรหัสตัวสร้างรหัสตัวสร้างรหัส constructor รหัส constructor รหัส constructor รหัส constructor รหัส constructor constructor code block code block codeblock03 วิธีการก่อสร้างขอบคุณสำหรับการอ่านฉันหวังว่ามันจะช่วยคุณได้ ขอบคุณสำหรับการสนับสนุนเว็บไซต์นี้!