Class and Object
Last updated
Last updated
Assoc. Prof. Wiroon Sriborrirux, Founder of Advance Innovation Center (AIC) and Bangsaen Design House (BDH), Electrical Engineering Department, Faculty of Engineering, Burapha University
หน่วยการสร้างที่นำไปสู่การเขียนโปรแกรมเชิงวัตถุ เป็นการกำหนดชนิดข้อมูลที่ผู้ใช้กำหนดเอง ประกอบไปด้วยตัวแปร (Attributes or Variables) และกระบวนการดำเนินการ (Function or Method) สามารถเข้าถึงและใช้งานได้โดยการสร้างวัตถุของคลาสนั้น ซึ่ง class เปรียบเสมือนพิมพ์เขียวของวัตถุ (Object)
ฟังก์ชันที่อยู่ใน class จะมีอีกชื่อเรียกว่า เมดธอด(Method)
ตัวระบุการเข้าถึงสมาชิก (Attributes และ Methods) ภายใน class
public -> สามารถเข้าถึงข้อมูลได้จากภายนอก class
private -> ไม่สามารถเข้าถึงข้อมูลได้จากภายนอก class แต่สามารถเข้าถึงได้จากหลักการของ Encapsulation
protected -> ไม่สามารถเข้าถึงข้อมูลจากภายนอก class แต่สามารถเข้าถึงได้จาก Inherited class
คำถาม Access specifier มีความสำคัญอย่างไร?
คำตอบ เนื่องจากภายใน class มีการตั้งค่าพื้นฐานการเข้าถึงเป็น private ทำให้ไม่สามารถเข้าถึงข้อมูลได้ หากต้องการเข้าถึงข้อมูลภายใน class นั้นต้องทำการระบุการเข้าถึงเป็น public
เนื่องจาก class เป็นเพียงข้อมูลจำเพาะบอกลักษณะ ไม่สามารถใช้ในโปรแกรมได้จึงต้องสร้างสิ่งที่เรียกว่าวัตถุ (object) ที่เป็นสิ่งที่สามารถระบุตัวตนได้โดยอาศัยลักษณะและพฤติกรรมบางอย่าง เปรียบเสมือนการประกอบพิมพ์เขียวให้สมบูรณ์กลายเป็นวัตถุชิ้นหนึ่ง
จากตัวอย่างจะเห็นว่า ผู้ใช้กำหนดว่าวัตถุที่เป็นหนังสือนั้นจะประกอบไปด้วย ชื่อเรื่อง ผู้เขียนและจำนวนหน้า ในกรณีนี้ object ที่ชื่อว่า book1 และ book2 เป็นหนังสือที่มีการกำหนดชื่อหนังสือ ผู้แต่งและจำนวนหน้าเรียบร้อยแล้ว
1 class สามารถนำไปใช้ได้กับหลาย object แต่ 1 object สามารถมีได้เพียง 1 class เท่านั้น
คำถาม ใน 1 ไฟล์ สามารถมีหลาย class ได้หรือไม่?
คำตอบ ได้
แหล่งอ้างอิงเพิ่มเติม