สุดท้ายมักจะใช้กับสแตติกเพื่อประกาศค่าคงที่และคุณจะเห็นว่าขั้นสุดท้ายปรับปรุงประสิทธิภาพของแอปพลิเคชัน
ความหมายของคำหลักสุดท้ายคืออะไร?
รอบชิงชนะเลิศเป็นคำหลักที่สงวนไว้ใน Java ซึ่งสามารถประกาศตัวแปรสมาชิกวิธีการคลาสและตัวแปรท้องถิ่น เมื่อคุณประกาศการอ้างอิงเป็นขั้นสุดท้ายคุณจะไม่สามารถเปลี่ยนการอ้างอิงได้
ตัวแปรสุดท้ายคืออะไร?
ตัวแปรสมาชิกหรือตัวแปรท้องถิ่น (ตัวแปรในวิธีการหรือบล็อกรหัสเรียกว่าตัวแปรท้องถิ่น) ที่ประกาศว่าเป็นสุดท้ายเรียกว่าตัวแปรสุดท้าย ตัวแปรสุดท้ายมักจะใช้ร่วมกับคำหลักคงที่เป็นค่าคงที่ นี่คือตัวอย่างของตัวแปรสุดท้าย:
การคัดลอกรหัสมีดังนี้:
เงินกู้สตริงสุดท้ายคงที่สาธารณะ = "สินเชื่อ";
สินเชื่อ = สตริงใหม่ ("สินเชื่อ") // ข้อผิดพลาดในการรวบรวมไม่ถูกต้อง
ตัวแปรสุดท้ายคือการอ่านอย่างเดียว
วิธีสุดท้ายคืออะไร?
สุดท้ายยังสามารถประกาศวิธีการ คำหลักสุดท้ายจะถูกเพิ่มก่อนวิธีการซึ่งหมายความว่าวิธีนี้ไม่สามารถเขียนใหม่ได้โดยวิธีการย่อย หากคุณคิดว่าฟังก์ชั่นของวิธีการเสร็จสมบูรณ์เพียงพอและไม่จำเป็นต้องเปลี่ยนแปลงในคลาสย่อยคุณสามารถประกาศวิธีนี้สุดท้าย วิธีสุดท้ายนั้นเร็วกว่าวิธีการที่ไม่ใช่รอบรองชนะเลิศเนื่องจากมีการผูกมัดแบบคงที่ในระหว่างการรวบรวมและไม่จำเป็นต้องถูกผูกมัดแบบไดนามิกที่รันไทม์ นี่คือตัวอย่างของวิธีสุดท้าย:
การคัดลอกรหัสมีดังนี้:
คลาส Personalloan {
Public Final String getName () {
คืน "สินเชื่อส่วนบุคคล";
-
-
Class Cheappersersalloan ขยาย Personalloan {
@Override
Public Final String getName () {
คืน "สินเชื่อส่วนบุคคลราคาถูก";
-
-
คลาสสุดท้ายคืออะไร?
คลาสที่ใช้สุดท้ายเพื่อแก้ไขเรียกว่าคลาสสุดท้าย คลาสสุดท้ายมักจะเสร็จสมบูรณ์ตามหน้าที่และไม่สามารถสืบทอดได้ มีคลาสมากมายใน Java ที่เป็นที่สิ้นสุดเช่น String, Interger และคลาส wrapper อื่น ๆ นี่คือตัวอย่างของคลาสสุดท้าย:
การคัดลอกรหัสมีดังนี้:
ชั้นเรียนสุดท้าย Personalloan {
-
Class Cheappersonalloan ขยาย Personalloan {// ข้อผิดพลาดในการรวบรวม: ไม่สามารถสืบทอดได้จากคลาสสุดท้าย
-
นี่คือประโยชน์บางอย่างของการใช้คำหลักขั้นสุดท้าย
คำหลักสุดท้ายปรับปรุงประสิทธิภาพ ทั้งแอปพลิเคชัน JVM และ Java แคชตัวแปรสุดท้าย
ตัวแปรสุดท้ายสามารถใช้ร่วมกันได้อย่างปลอดภัยในสภาพแวดล้อมแบบหลายเธรดโดยไม่จำเป็นต้องมีค่าใช้จ่ายในการซิงโครไนซ์เพิ่มเติม
การใช้คำหลักสุดท้าย JVM จะเพิ่มประสิทธิภาพวิธีการตัวแปรและคลาส
ชั้นเรียนที่ไม่เปลี่ยนรูป
ในการสร้างคลาสที่ไม่เปลี่ยนรูปให้ใช้คำหลักสุดท้าย คลาสที่ไม่เปลี่ยนรูปหมายความว่าวัตถุของมันไม่สามารถเปลี่ยนแปลงได้เมื่อสร้างขึ้น สตริงเป็นตัวแทนของคลาสที่ไม่เปลี่ยนรูป ชั้นเรียนที่ไม่เปลี่ยนรูปมีประโยชน์มากมายเช่นวัตถุของพวกเขาเป็นแบบอ่านอย่างเดียวและสามารถแบ่งปันได้อย่างปลอดภัยในสภาพแวดล้อมแบบมัลติเธรดโดยไม่ต้องมีการซิงโครไนซ์เพิ่มเติม ฯลฯ
การอ่านที่เกี่ยวข้อง: ทำไมสตริงจึงไม่เปลี่ยนรูปและวิธีการเขียนคลาสที่ไม่เปลี่ยนรูป
ความรู้สำคัญเกี่ยวกับขั้นสุดท้าย
คำหลักสุดท้ายสามารถใช้สำหรับตัวแปรสมาชิกตัวแปรท้องถิ่นวิธีการและคลาส
ตัวแปรสมาชิกสุดท้ายจะต้องเริ่มต้นในเวลาที่ประกาศหรือในตัวสร้างมิฉะนั้นจะมีการรายงานข้อผิดพลาดในการรวบรวม
คุณไม่สามารถกำหนดตัวแปรสุดท้ายได้อีก
ตัวแปรท้องถิ่นจะต้องได้รับค่าที่กำหนดในเวลาประกาศ
ตัวแปรทั้งหมดในคลาสที่ไม่ระบุชื่อจะต้องเป็นตัวแปรสุดท้าย
วิธีสุดท้ายไม่สามารถเขียนใหม่ได้
คลาสสุดท้ายไม่สามารถสืบทอดได้
คำหลักสุดท้ายนั้นแตกต่างจากคำหลักสุดท้ายซึ่งใช้สำหรับการจัดการข้อยกเว้น
คำหลักสุดท้ายนั้นสับสนง่ายด้วยวิธีการสรุป () ซึ่งเป็นวิธีที่กำหนดไว้ในคลาสวัตถุและเป็นวิธีที่เรียกโดย JVM ก่อนการรวบรวมขยะ
ตัวแปรทั้งหมดที่ประกาศในอินเทอร์เฟซนั้นเป็นที่สิ้นสุด
คำหลักสองคำสุดท้ายและนามธรรมเกี่ยวข้องกันอย่างผกผันดังนั้นคลาสสุดท้ายจึงไม่สามารถเป็นนามธรรมได้
วิธีสุดท้ายจะถูกผูกไว้ที่ขั้นตอนการรวบรวมซึ่งเรียกว่าการผูกคงที่
ตัวแปรสุดท้ายที่ว่างเปล่าที่ไม่ได้เริ่มต้นตัวแปรสุดท้ายที่การประกาศเรียกว่าตัวแปรสุดท้ายที่ว่างเปล่า หากคุณไม่ทำเช่นนี้คอมไพเลอร์จะรายงานข้อผิดพลาด "ตัวแปรสุดท้าย (ชื่อตัวแปร) จะต้องเริ่มต้น"
การประกาศคลาสวิธีการและตัวแปรเป็นขั้นสุดท้ายสามารถปรับปรุงประสิทธิภาพเพื่อให้ JVM มีโอกาสประเมินและเพิ่มประสิทธิภาพ
ตามอนุสัญญารหัส Java ตัวแปรสุดท้ายคือค่าคงที่และชื่อคงที่มักจะเป็นตัวพิมพ์ใหญ่:
จำนวน int สุดท้ายส่วนตัว = 10;
การประกาศขั้นสุดท้ายสำหรับวัตถุการรวบรวมหมายความว่าการอ้างอิงไม่สามารถเปลี่ยนแปลงได้ แต่คุณสามารถเพิ่มลบหรือเปลี่ยนเนื้อหาได้ ตัวอย่างเช่น:
สินเชื่อรายการสุดท้ายส่วนตัว = new ArrayList ();
list.add ("สินเชื่อบ้าน");
list.add ("สินเชื่อส่วนบุคคล");
สินเชื่อ = เวกเตอร์ใหม่ ();
เรารู้อยู่แล้วว่าตัวแปรสุดท้ายวิธีการขั้นสุดท้ายและคลาสสุดท้ายคืออะไร ใช้สุดท้ายเมื่อจำเป็นในการเขียนโค้ดที่เร็วขึ้นและดีขึ้น