Java Abstract Class
Abstract Class เป็น Class ที่เป็นชื่อนามธรรมที่ใช้เรียกชื่อกลุ่มของนาม
Abstract Class ไม่สามารถสร้าง Object หรือ Instance ได้
Abstract Class เป็น Class ที่ไม่สมบูรณ์ สร้างขึ้นเพื่อให้คลาสลูกมาสืบทอดกล่าวคือเป็นฐานการทำงานสำหรับคลาสลูก
Abstract Class จะไม่มีการใช้งานเว้นแต่จะมี คลาสลูก มาสืบทอด
จุดประสงค์หลักของการสร้าง Abstract Class คือสร้างขึ้นเพื่อให้สมเหตุสมผลกับแนวคิดเชิงวัถตุ
ตัวอย่าง แนวคิดเชิงวัตถุของ Abstract Class
Animal ควรจะเป็น Abstract Class เพราะ Animal เป็นชื่อกลุ่มของนามธรรมซึ่งมันไม่สมควรที่จะมี Object หรือ Instance ใดๆ เพราะเรายังนึกภาพในหัวไม่ออกว่า Animal นี้จะเป็นตัวรูปร่างอย่างไร
ส่วน Cat และ Dog คือคลาสลูกที่สืบทอดมาจาก Animal ทั้งสองจะทำให้ Animal ซึ่งเป็น Abstract Class นั้นสมบูรณ์และสามารถบอกได้ว่ามันคือตัวอะไร แล้วจึงสามารถสร้าง Object หรือ Instance ของตัวนั้นๆได้
การประกาศ Abstract Class ให้เติม keyword "abstract" ข้างหน้า keyword "class"
ตัวอย่าง code
Abstract Method คือ Method ที่ไม่มี body หรือการทำงานใดๆ มีแค่ชื่อ Method เท่านั้น
การประกาศ Abstract Method ให้เติม keyword "abstract" ข้างหน้า void หรือ Reture Type
ตัวอย่าง code
ถ้าคุณประกาศ Abstract Method คุณต้อง ประกาศ Abstract Class ด้วยเสมอ คุณไม่สามารถมี Abstract Method ใน Non-Abstract Class ได้
Abstract Class สามารถมีทั้ง Abstract Method และ Non-Abstract Method อีกทั้งยังสามารถมีสมาชิกอื่นๆเช่นเดียวกับ Class ปกติได้
คลาสลูก ของ Abstract Class ต้อง Override ทุก Abstract Method ของ คลาสแม่
ส่วน Non-Abstract Method จะถูกสืบทอดไปตามปกติจะ Override หรือไม่ก็ได้ตามความจำเป็น
ตัวอย่าง code ภาพรวม
ไม่มีความคิดเห็น:
แสดงความคิดเห็น