ความแตกต่างที่สำคัญ – คงที่เทียบกับขั้นสุดท้ายใน Java
แต่ละภาษาโปรแกรมมีรูปแบบเฉพาะ โปรแกรมเมอร์ควรปฏิบัติตามไวยากรณ์เหล่านี้เมื่อเขียนโปรแกรม คีย์เวิร์ดของภาษาโปรแกรมมีความหมายเฉพาะตามงาน สิ่งเหล่านี้ถูกจัดเตรียมโดยภาษาการเขียนโปรแกรม และไม่สามารถใช้สำหรับตัวแปรที่ผู้ใช้กำหนด เมธอด คลาส ฯลฯ สแตติกและสุดท้ายคือคีย์เวิร์ดสองคำใน Java บทความนี้กล่าวถึงความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java ความแตกต่างที่สำคัญระหว่างสแตติกและขั้นสุดท้ายใน Java คือสแตติกใช้เพื่อกำหนดสมาชิกของคลาสที่สามารถใช้โดยไม่ขึ้นกับวัตถุใด ๆ ของคลาส ในขณะที่ขั้นสุดท้ายใช้เพื่อประกาศตัวแปรคงที่หรือวิธีการที่ไม่สามารถแทนที่หรือคลาสที่ ไม่สามารถสืบทอดได้
ค่าคงที่ใน Java คืออะไร
A คลาสประกอบด้วยสมาชิกข้อมูล (แอตทริบิวต์) และวิธีการ ในการเรียกเมธอด ควรมีอ็อบเจ็กต์ของคลาสนั้น เมื่อเมธอดถูกประกาศเป็นสแตติก ไม่จำเป็นต้องสร้างอ็อบเจ็กต์เพื่อเรียกเมธอดนั้น วิธีการนี้สามารถเรียกได้โดยใช้ชื่อคลาส อ้างอิงโปรแกรมด้านล่าง
รูปที่ 01: โปรแกรม Java พร้อมตัวแปรสแตติกและเมธอดแบบคงที่
ตามโปรแกรมข้างต้น คลาส A มีตัวแปรตัวเลขและวิธีการแสดงผล ทั้งสองเป็นสมาชิกแบบคงที่ ดังนั้นจึงไม่จำเป็นต้องสร้างวัตถุเพื่อเข้าถึงตัวแปรตัวเลขและวิธีการแสดงผล โปรแกรมเมอร์สามารถเขียนชื่อคลาสได้โดยตรงเพื่อพิมพ์หมายเลขและเรียกวิธีการแสดง ดังนั้นจึงไม่จำเป็นต้องยกตัวอย่างวัตถุหากตัวแปรตัวเลขและวิธีการแสดงผลไม่คงที่ ก็ควรมีวัตถุประเภท A
รูปที่ 02: การใช้บล็อกแบบคงที่
โปรแกรมด้านบนมีบล็อกคงที่และวิธีการหลัก บล็อกสแตติกถูกเรียกเมื่อโหลดคลาส ดังนั้นคำสั่งในบล็อกแบบคงที่จะดำเนินการก่อนคำสั่งในบล็อกหลัก หากสแตติกบล็อกจำนวนมาก บล็อกเหล่านั้นจะดำเนินการตามลำดับ
สุดท้ายใน Java คืออะไร
ในโปรแกรมมีตัวแปรได้หลายประเภท หากมีตัวแปรเป็น int x=1; ภายหลังในโปรแกรม ค่าตัวแปรนั้นสามารถเปลี่ยนเป็นค่าอื่นได้ ตัวแปรที่ถูกประกาศเป็นค่าสุดท้ายและเริ่มต้นด้วยค่าไม่สามารถเปลี่ยนแปลงได้ในภายหลังในโปรแกรม
รูปที่ 03: โปรแกรมที่มีตัวแปรและการสืบทอดขั้นสุดท้าย
ตามโปรแกรมข้างต้น x เป็นตัวแปรสุดท้าย มีการกำหนดค่าเป็น 5 ไม่สามารถเปลี่ยนแปลงค่าอื่นได้เนื่องจากถูกประกาศเป็นค่าสุดท้าย Java รองรับการเขียนโปรแกรมเชิงวัตถุ (OOP) เสาหลักของ OOP คือความหลากหลาย ความแตกต่างประเภทหนึ่งคือการเอาชนะ คลาส A มีวิธีการแสดงผล คลาส B ขยายคลาส A และมีวิธีการแสดงผลของตัวเอง เมื่อสร้างวัตถุประเภท B และเรียกวิธีการแสดงจะพิมพ์ "B" เป็นเอาต์พุต วิธีการแสดงของคลาส A ถูกแทนที่โดยวิธีการแสดงของคลาส B
หากโปรแกรมเมอร์ควรหลีกเลี่ยงวิธีการใด เขาสามารถใช้คีย์เวิร์ดสุดท้ายสำหรับวิธีการนั้นได้ หากวิธีการแสดงผลในคลาส A ถือเป็นที่สิ้นสุด วิธีการแสดงผลใน B จะทำให้เกิดข้อผิดพลาดเนื่องจากไม่สามารถลบล้างวิธีการนั้นได้
รูปที่ 04: คีย์เวิร์ดสุดท้ายในเมธอด
อีกหนึ่งเสาหลักของ OOP คือมรดก ช่วยนำรหัสที่มีอยู่แล้วมาใช้ซ้ำ คลาสใหม่สามารถขยายจากคลาสที่มีอยู่และใช้ข้อมูลสมาชิกและวิธีการของคลาสที่มีอยู่ หากจำเป็นต้องหยุดการสืบทอดคลาส โปรแกรมเมอร์สามารถใช้คำสำคัญ 'final' อ้างอิงโปรแกรมด้านล่าง
รูปที่ 05: คำหลักสุดท้ายในชั้นเรียน
ตามโปรแกรมข้างต้น คลาส A ถือเป็นที่สิ้นสุด เมื่อคลาส B ขยาย A จะทำให้เกิดข้อผิดพลาดเนื่องจากคลาส A ถูกประกาศเป็นขั้นสุดท้าย ไม่สามารถสืบทอดโดยคลาสอื่นได้
ความคล้ายคลึงกันระหว่าง static และ final ใน Java คืออะไร
ทั้งแบบคงที่และแบบสุดท้ายเป็นคีย์เวิร์ดในภาษาจาวา
อะไรคือความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java
คงที่ vs สุดท้ายใน Java |
|
สแตติกคีย์เวิร์ดแสดงว่าตัวแปรสมาชิกหรือเมธอดสามารถเข้าถึงได้โดยไม่ต้องสร้างอินสแตนซ์ของคลาสที่เป็นของมัน | คำสำคัญสุดท้ายหมายถึงเอนทิตีที่สามารถกำหนดได้เพียงครั้งเดียว |
ตัวแปร | |
ตัวแปรคงที่สามารถเริ่มต้นใหม่ได้ | ตัวแปรสุดท้ายไม่สามารถเริ่มต้นใหม่ได้ |
วิธีการ | |
เรียกได้โดยวิธีสแตติกอื่นและเข้าถึงได้เฉพาะสมาชิกสแตติกของชั้นเรียนเท่านั้น | วิธีสุดท้ายไม่สามารถแทนที่ได้ |
คลาส | |
ไม่สามารถสร้างวัตถุคลาสคงที่ได้ มีเฉพาะสมาชิกแบบคงที่เท่านั้น | คลาสอื่นไม่สามารถสืบทอดคลาสสุดท้ายได้ |
บล็อก | |
สแตติกคีย์เวิร์ดสามารถใช้ในบล็อกได้ | คีย์เวิร์ดสุดท้ายไม่ได้ใช้กับบล็อก |
สรุป – คงที่เทียบกับรอบชิงชนะเลิศใน Java
บทความนี้กล่าวถึงคำหลักสองคำใน Java เช่น คงที่และสุดท้าย ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java คือสแตติกใช้เพื่อกำหนดสมาชิกของคลาสที่สามารถใช้อย่างอิสระจากวัตถุใด ๆ ของคลาสในขณะที่ขั้นสุดท้ายใช้เพื่อประกาศตัวแปรคงที่หรือวิธีการที่ไม่สามารถแทนที่หรือคลาสที่ไม่สามารถทำได้ ได้รับการสืบทอด