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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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