17.มารู้จักกับ Class & Field กัน
Last updated
Last updated
💬 เคยหงุดหงิดกันไหมเวลาเขียนโปรแกรมแล้วต้องมาคอยจัดการกับตัวแปรเยอะๆ เช่น ข้อมูลของนักเรียน 1 คนต้องใช้ตัวแปร 4 ตัวเพราะมันมี ชื่อ, นามสกุล, อายุ, รหัสนักเรียน แล้วถ้าเราต้องเก็บข้อมูลนักเรียน 10 คนล่ะ? นั่นแสดงว่าเราต้องมีตัวแปรอย่างน้อย 40 ตัวใช่ไหม? แต่ลองคิดดูนะว่ามันจะปวดกบาลขนาดไหนถ้าต้องจัดการกับนักเรียน 100 คน!! เอาละไม่ต้องทนปวดกบาลอีกต่อไปเมื่อเรารู้จักกับสิ่งที่เรียกว่า Class
การสร้างชนิดข้อมูลแบบใหม่ที่เราสามารถกำหนดได้เองว่ามันจะประกอบไปด้วยอะไรบ้าง เช่นข้อมูลของนักเรียน 1 คนที่ประกอบไปด้วย ชื่อ, นามสกุล, อายุ, รหัสนักเรียน แทนที่เราจะเขียนโค้ดแบบด้านล่าง
เราก็สามารถมาสร้างเป็นชนิดข้อมูลแบบใหม่ที่เราเรียกมันว่า Student แทน
นิยามจริงๆของ Class คือ ต้นแบบ หรือ พิมพ์เขียว แต่คิดว่าอธิบายแบบนี้ละก็หลายๆคนคงกดเปลี่ยนไปดูการ์ตูนแล้วล่ะเลยขออธิบายแบบนี้ไปก่อนละกันนะ เดี๋ยวค่อยเข้าใจมันอีกทีตอนที่อธิบายเรื่อง OOP หรือที่เราเรียกเต็มๆกันว่า Object Oriented Programming
Class เป็น Reference type เด้อ
การใช้งาน class เราจะต้องทำการสร้าง object ขึ้นมาก่อนผ่านคำสั่ง new ตามตัวอย่างด้านล่าง
เมื่อเราต้องการใช้งานตัวแปรต่างๆของคลาสนั้นๆเราก็จะทำการกดปุ่ม (จุด) . เพื่อบอกว่าจะทำงานกับตัวแปรไหนของคลาสนั้นๆ ตามตัวอย่างด้านล่าง
คือตัวที่ใช้บอกว่าตัวแปรในคลาสนั้นๆ เปิดสิทธิ์ให้คนภายนอกเรียกใช้แบบไหนได้บ้าง ซึ่งมีทั้งหมด 6 ชนิด
ถ้าไม่เตรียมไปสอบ ก็ไม่ต้องไปนั่งจำมันหรอก ใช้ๆไปเดี๋ยวก็จำได้ทั้งหมดเอง แต่สิ่งที่ควรจะจำเป็นพื้นฐานเลยคือ public กับ private เท่านั้นก่อนนะจ๊ะ
No
Access modifier
ความหมาย
1
public
เปิดให้ทุกคนเข้าใช้งานได้
2
private
ให้เฉพาะคนในคลาสมันเองใช้งานได้เท่านั้น
3
protected
ให้เฉพาะคลาสมันเอง และ คลาสลูกเท่านั้น
4
internal
ภายใน assembly เดียวกันเท่านั้นถึงใช้งานได้
5
protected internal
ภายใน assembly เดียวกัน หรือ คลาสลูกที่ต่าง assembly เท่านั้น
6
private protected
ภายใน assembly เดียวกัน หรือคลาสลูกเท่านั้น