#11 สรุปความหมายของ class และ object

เราเริ่มต้นเรียนรู้ คำว่า "คลาส" ด้วยการสร้างคลาส Students ขึ้นมา 1 คลาส ภายในคลาสว่างเปล่า ไม่มีอะไรเลย

 

TH-JAVA Quick Start Java -11-1

ภาพที่ 1 ไฟล์ Students.java

 

จากนั้นเราก็เรียนรู้ คำว่า "ออบเจ็กต์" ด้วยการสร้าง ออบเจ็กต์ จากคลาส Students ขึ้นมา เรารู้ว่า คลาส 1 คลาส สามารถสร้าง ออบเจ็กต์ ได้มากมายเท่าไหร่ก็ได้ ตามความต้องการใช้งาน

TH-JAVA Quick Start Java -11-2

ภาพที่ 2 ไฟล์ Main.java

 

แต่ออบเจ็กต์ที่สร้างขึ้นมาจาก คลาส เปล่า ๆ ไม่มีอะไรเลยนั้น ใช้ประโยชน์อะไรไม่ได้เลย ดังนั้น เราคงจะรู้แล้วว่า

 

การออกแบบคลาส” เป็นเรื่องสำคัญ ตอนที่เราเขียนคลาสขึ้นมา เราต้องรู้แล้วว่า เมื่อ “คลาส” แปลงร่างไปเป็น “ออบเจ็กต์” มันจะสามารถทำอะไรได้บ้าง

 

ต่อมาเราได้เรียนรู้ว่า องค์ประกอบของคลาส มีอะไรบ้าง ซึ่งในเบื้องต้นมันประกอบไปด้วยตัวแปร (variable) และเมธอด (method)

 

TH-JAVA Quick Start Java -11-3

ภาพที่ 3 แสดงตัวแปร และเมธอด

 

ตัวแปร” คือที่เก็บข้อมูล ที่จะนำมาใช้ประมวลผลในโปรแกรม ซึ่งวิธีการประมวลผลต่าง ๆ นั้น จะถูกเขียนเอาไว้ใน “เมธอด

 

ความสามารถของเมธอดก็คือ ความสามารถที่จะจัดการ หรือประมวลผลต่าง ๆ กับตัวแปร

 

เรากำหนดค่าตัวแปรผ่านทาง คอนสตรัคเตอร์ (constructor) และใช้เมธอด toString() เพื่อดูว่าแต่ละออบเจ็กต์ เก็บค่าอะไรเอาไว้

 

TH-JAVA Quick Start Java -11-4

ภาพที่ 4 แสดงการใช้งาน constructor และ method

 

ความแตกต่างที่สำคัญ อย่างหนึ่งในเรื่องของ คลาส และ ออบเจ็กต์ คือ “มุมมอง” ที่เราใช้ เวลาทำงานร่วมกับมัน

 

ตอนเรา "เขียนคลาส" เรามองในมุมของ “การออกแบบ” เราจะออกแบบคลาสยังไง จะเขียนโค้ดแบบไหน

 

TH-JAVA Quick Start Java -11-5

ภาพที่ 5 แสดงการออกแบบคลาส

 

ในขณะที่เรา “สร้างออบเจ็กต์” เราสร้างมันขึ้นมาเพื่อใช้งาน เรามองออบเจ็กต์ในมุมที่ว่า “จะต้องเรียกใช้เมธอดอะไร เพื่อให้ได้ผลลัพธ์ตามที่ต้องการ

 

TH-JAVA Quick Start Java -11-6

ภาพที่ 6 แสดงออบเจ็กต์ต่าง ๆ

 

หากไม่มี “คลาส” เราก็ไม่สามารถสร้าง “ออบเจ็กต์” ขึ้นมาได้

 

สิ่งที่คลาสมี คือสิ่งที่กำหนดว่า ออบเจ็กต์จะมีอะไรบ้าง

 

TH-JAVA Quick Start Java -11-7

ภาพที่ 7 แสดงการสร้างออบเจ็กต์จากคลาส Students

 

หวังว่า การเดินทางมาถึงบทความนี้ จะทำให้หลาย ๆ คน เข้าใจคำว่า “คลาส” และ “ออบเจ็กต์” มากขึ้นนะคะ

 

แล้วพบกัน ในตอนต่อไปคะ

 

Comments

comments

ธมนวรรณ มณีจันทร์

เป้าหมาย : "พัฒนาคุณภาพชีวิตผู้คน ผ่านการส่งมอบความรู้ ด้วยเทคโนโลยีที่ดีที่สุด" ... ประวัติ