ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

สารบัญ:

ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java
ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

วีดีโอ: ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

วีดีโอ: ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java
วีดีโอ: [Effective Java][Item 1]Consider static factory methods instead of constructors 2024, พฤศจิกายน
Anonim

ความแตกต่างที่สำคัญ – คงที่เทียบกับขั้นสุดท้ายใน Java

แต่ละภาษาโปรแกรมมีรูปแบบเฉพาะ โปรแกรมเมอร์ควรปฏิบัติตามไวยากรณ์เหล่านี้เมื่อเขียนโปรแกรม คีย์เวิร์ดของภาษาโปรแกรมมีความหมายเฉพาะตามงาน สิ่งเหล่านี้ถูกจัดเตรียมโดยภาษาการเขียนโปรแกรม และไม่สามารถใช้สำหรับตัวแปรที่ผู้ใช้กำหนด เมธอด คลาส ฯลฯ สแตติกและสุดท้ายคือคีย์เวิร์ดสองคำใน Java บทความนี้กล่าวถึงความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java ความแตกต่างที่สำคัญระหว่างสแตติกและขั้นสุดท้ายใน Java คือสแตติกใช้เพื่อกำหนดสมาชิกของคลาสที่สามารถใช้โดยไม่ขึ้นกับวัตถุใด ๆ ของคลาส ในขณะที่ขั้นสุดท้ายใช้เพื่อประกาศตัวแปรคงที่หรือวิธีการที่ไม่สามารถแทนที่หรือคลาสที่ ไม่สามารถสืบทอดได้

ค่าคงที่ใน Java คืออะไร

A คลาสประกอบด้วยสมาชิกข้อมูล (แอตทริบิวต์) และวิธีการ ในการเรียกเมธอด ควรมีอ็อบเจ็กต์ของคลาสนั้น เมื่อเมธอดถูกประกาศเป็นสแตติก ไม่จำเป็นต้องสร้างอ็อบเจ็กต์เพื่อเรียกเมธอดนั้น วิธีการนี้สามารถเรียกได้โดยใช้ชื่อคลาส อ้างอิงโปรแกรมด้านล่าง

ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java
ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

รูปที่ 01: โปรแกรม Java พร้อมตัวแปรสแตติกและเมธอดแบบคงที่

ตามโปรแกรมข้างต้น คลาส A มีตัวแปรตัวเลขและวิธีการแสดงผล ทั้งสองเป็นสมาชิกแบบคงที่ ดังนั้นจึงไม่จำเป็นต้องสร้างวัตถุเพื่อเข้าถึงตัวแปรตัวเลขและวิธีการแสดงผล โปรแกรมเมอร์สามารถเขียนชื่อคลาสได้โดยตรงเพื่อพิมพ์หมายเลขและเรียกวิธีการแสดง ดังนั้นจึงไม่จำเป็นต้องยกตัวอย่างวัตถุหากตัวแปรตัวเลขและวิธีการแสดงผลไม่คงที่ ก็ควรมีวัตถุประเภท A

ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 02
ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 02

รูปที่ 02: การใช้บล็อกแบบคงที่

โปรแกรมด้านบนมีบล็อกคงที่และวิธีการหลัก บล็อกสแตติกถูกเรียกเมื่อโหลดคลาส ดังนั้นคำสั่งในบล็อกแบบคงที่จะดำเนินการก่อนคำสั่งในบล็อกหลัก หากสแตติกบล็อกจำนวนมาก บล็อกเหล่านั้นจะดำเนินการตามลำดับ

สุดท้ายใน Java คืออะไร

ในโปรแกรมมีตัวแปรได้หลายประเภท หากมีตัวแปรเป็น int x=1; ภายหลังในโปรแกรม ค่าตัวแปรนั้นสามารถเปลี่ยนเป็นค่าอื่นได้ ตัวแปรที่ถูกประกาศเป็นค่าสุดท้ายและเริ่มต้นด้วยค่าไม่สามารถเปลี่ยนแปลงได้ในภายหลังในโปรแกรม

ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 03
ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 03

รูปที่ 03: โปรแกรมที่มีตัวแปรและการสืบทอดขั้นสุดท้าย

ตามโปรแกรมข้างต้น x เป็นตัวแปรสุดท้าย มีการกำหนดค่าเป็น 5 ไม่สามารถเปลี่ยนแปลงค่าอื่นได้เนื่องจากถูกประกาศเป็นค่าสุดท้าย Java รองรับการเขียนโปรแกรมเชิงวัตถุ (OOP) เสาหลักของ OOP คือความหลากหลาย ความแตกต่างประเภทหนึ่งคือการเอาชนะ คลาส A มีวิธีการแสดงผล คลาส B ขยายคลาส A และมีวิธีการแสดงผลของตัวเอง เมื่อสร้างวัตถุประเภท B และเรียกวิธีการแสดงจะพิมพ์ "B" เป็นเอาต์พุต วิธีการแสดงของคลาส A ถูกแทนที่โดยวิธีการแสดงของคลาส B

หากโปรแกรมเมอร์ควรหลีกเลี่ยงวิธีการใด เขาสามารถใช้คีย์เวิร์ดสุดท้ายสำหรับวิธีการนั้นได้ หากวิธีการแสดงผลในคลาส A ถือเป็นที่สิ้นสุด วิธีการแสดงผลใน B จะทำให้เกิดข้อผิดพลาดเนื่องจากไม่สามารถลบล้างวิธีการนั้นได้

ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 04
ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java_Figure 04

รูปที่ 04: คีย์เวิร์ดสุดท้ายในเมธอด

อีกหนึ่งเสาหลักของ OOP คือมรดก ช่วยนำรหัสที่มีอยู่แล้วมาใช้ซ้ำ คลาสใหม่สามารถขยายจากคลาสที่มีอยู่และใช้ข้อมูลสมาชิกและวิธีการของคลาสที่มีอยู่ หากจำเป็นต้องหยุดการสืบทอดคลาส โปรแกรมเมอร์สามารถใช้คำสำคัญ 'final' อ้างอิงโปรแกรมด้านล่าง

Ke3y ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java
Ke3y ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

รูปที่ 05: คำหลักสุดท้ายในชั้นเรียน

ตามโปรแกรมข้างต้น คลาส A ถือเป็นที่สิ้นสุด เมื่อคลาส B ขยาย A จะทำให้เกิดข้อผิดพลาดเนื่องจากคลาส A ถูกประกาศเป็นขั้นสุดท้าย ไม่สามารถสืบทอดโดยคลาสอื่นได้

ความคล้ายคลึงกันระหว่าง static และ final ใน Java คืออะไร

ทั้งแบบคงที่และแบบสุดท้ายเป็นคีย์เวิร์ดในภาษาจาวา

อะไรคือความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java

คงที่ vs สุดท้ายใน Java

สแตติกคีย์เวิร์ดแสดงว่าตัวแปรสมาชิกหรือเมธอดสามารถเข้าถึงได้โดยไม่ต้องสร้างอินสแตนซ์ของคลาสที่เป็นของมัน คำสำคัญสุดท้ายหมายถึงเอนทิตีที่สามารถกำหนดได้เพียงครั้งเดียว
ตัวแปร
ตัวแปรคงที่สามารถเริ่มต้นใหม่ได้ ตัวแปรสุดท้ายไม่สามารถเริ่มต้นใหม่ได้
วิธีการ
เรียกได้โดยวิธีสแตติกอื่นและเข้าถึงได้เฉพาะสมาชิกสแตติกของชั้นเรียนเท่านั้น วิธีสุดท้ายไม่สามารถแทนที่ได้
คลาส
ไม่สามารถสร้างวัตถุคลาสคงที่ได้ มีเฉพาะสมาชิกแบบคงที่เท่านั้น คลาสอื่นไม่สามารถสืบทอดคลาสสุดท้ายได้
บล็อก
สแตติกคีย์เวิร์ดสามารถใช้ในบล็อกได้ คีย์เวิร์ดสุดท้ายไม่ได้ใช้กับบล็อก

สรุป – คงที่เทียบกับรอบชิงชนะเลิศใน Java

บทความนี้กล่าวถึงคำหลักสองคำใน Java เช่น คงที่และสุดท้าย ความแตกต่างระหว่างสแตติกและขั้นสุดท้ายใน Java คือสแตติกใช้เพื่อกำหนดสมาชิกของคลาสที่สามารถใช้อย่างอิสระจากวัตถุใด ๆ ของคลาสในขณะที่ขั้นสุดท้ายใช้เพื่อประกาศตัวแปรคงที่หรือวิธีการที่ไม่สามารถแทนที่หรือคลาสที่ไม่สามารถทำได้ ได้รับการสืบทอด

แนะนำ: