บทสรุปของ modifier ประเภทที่ 1
สวัสดีคะ ยามเที่ยงวัน กำลังหิวได้ที่เลยใช่ไม๊คะ
หลังจากที่ห่างหายการอัพเดทบล๊อกมาหลายวัน วันนี้ก็เลยแอบมานั่งอัพบล๊อกซักหน่อย
เป็นอีก 1 วันในไม่กี่วันที่เหลือที่จะได้ทำงานที่เวนด้าแล้วคะ ทรายกำลังจะย้ายไปทำงานที่ใหม่แล้ว
แต่จะเป็นที่ไหน .. อีกไม่กี่วัน ทรายจะมาบอกอีกที ~
ความเดิมตอนที่แล้ว เราพูดถึงครอบครัวของ modifier ประเภทที่ 1 ไปแล้ว
แต่ทรายเชื่อว่าหลายคนอาจจะยังสงสัยกับการเล่าเรื่องแบบนั้นนะคะ วันนี้ก็จะมาสรุปให้อ่านต่อคะ
Modifier ประเภทที่ 1 คือ Access modifier แบ่งย่อยไปอีก ก็จะเป็น private, public, protect และ package นะคะ โดยที่
- Private หรือ เด็กชายPrivate ผู้ซึ่ง ไม่ยอมให้เพื่อนนอกนอกโรงเรียน หรือว่า นอกห้องเรียน ยอมใช้ตัวแปรและเมธอดของตัวเองเลย กล่าวคือ เมื่อเราประกาศตัวแปรหรือว่าเมธอดเป็น private แล้ว จะไม่สามารถถูกเรียกใช้จาก ภายนอก Class และ ภายนอก Package ได้นั่นเองคะ แล้วที่บอกว่าเด็กชาย private เป็นคนคิด - เนื่องจากเวลาเราต้องออกแบบ Class Diagram เราจะใส่เครื่องหมาย - ที่หน้า เมธอดและหน้าตัวแปรนั่นเองคะ
ไม่ยอมให้เพื่อนนอกนอกโรงเรียน ---> ไม่ยอมให้นอก Packageเข้าถึงได้
ไม่ยอมให้เพื่อนนอกห้องเรียน ---> ไม่ยอมให้นอก Classเข้าถึงได้
- Public หรือ เด็กหญิง Public เด็กหญิงผู้ใจดี แบ่งปันให้ทั้งเพื่อนนอกโรงเรียน และเพื่อนนอกห้องเรียน ใช้ตัวแปรและเมธอดของเธอ กล่าวคือ เมือ่เราประกาศตัวแปรหรือเมธอดเป็น public แล้วนั้น เราสามารถเรียกใช้ได้จากทั้งในคลาส/นอกคลาส หรือนอก package ได้ด้วย และด้วยเหตุผลที่เธอเป็นคนคิด + เวลาเขียน Class Diagram เราจะใส่เครื่องหมาย + ที่หน้าเมธอดและหน้าตัวแปร
ยอมให้เพื่อนนอกนอกโรงเรียน ---> ยอมให้นอก Packageเข้าถึงได้
ยอมให้เพื่อนนอกห้องเรียน ---> ยอมให้นอก Classเข้าถึงได้
- Protected หรือคุณป้า protect คุณป้าจะขายขนมตัวแปรและขนมเมธอดให้เฉพาะเด็กนักเรียนที่อยู่ในห้องเดียวกับห้องที่คุณป้าอยู่สมัย ป.6 และนักเรียนที่อยู่ภายในโรงเรียนนี้เท่านั้น ไม่ขายให้กับคนนอกโรงเรียน สำหรับคุณพ่อคุณแม่ถ้าอยากซื้อขนมของคุณป้า คุณป้าบอกว่ามีข้อแม้นะคะ ต้องเป็นคุณพ่อคุณแม่ของนักเรียนที่อยู่ห้องเดียวกับห้องที่คุณป้าอยู่สมัยป. 6 ตรงนี้ทุกคนอาจจะเริ่มงงแล้ว ใช่ไม๊ละคะ อย่าเพิ่งงงนะคะ ก็คือว่า protected เมื่อเรานำไปใช้ประกาศร่วมกับตัวแปรหรือเมธอดแล้วจะถูกเรียกใช้ได้ในคลาสเดียวกันเท่านั้น ซึ่งแน่นอนว่าต้องอยู่ใน package เดียวกันด้วย จะไม่สามารถใช้ได้เลยถ้าอยู่นอก package แต่ตรงข้อแม้ที่ดูจะยืดหยุ่นหน่อยตรงที่ว่าถ้าเป็นคลาสที่ไปสืบทอดมา เราจะสามารถใช้ตัวแปรหรือเมธอดของพ่อกับแม่ได้ด้วยยย
เด็กนักเรียนที่อยู่ในห้องเดียวกับห้องที่คุณป้าอยู่สมัย ป.6
---> ภายในClassเดียวกันสามารถเข้าถึงได้
นักเรียนที่อยู่ภายในโรงเรียนนี้เท่านั้น
---> ภายในPackageเดียวกันเท่านั้นสามารถเข้าถึงได้
คุณพ่อคุณแม่ของนักเรียนที่อยู่ห้องเดียวกับห้องที่คุณป้าอยู่สมัยป. 6
---> Class อื่นสามารถเข้าถึงได้ ถ้าเป็นClass ที่มาสืบทอดจากคลาสนี้
- Package คุณครูใหญ่ของโรงเรียนคะ คุณครู package คุณครูใจดีกับนักเรียนทุกๆคนในโรงเรียน และ นักเรียนทุกๆห้องที่อยู่ภายในโรงเรียนเดียวกัน ให้สามารถใช้ตัวแปรและ เมธอดได้เลย ดูจากชื่อก็พอจะทราบได้เลยนะคะว่า ทุกๆคลาสใน package นั้นสามารถเรียกใช้ ตัวแปรและเมธอดนั้นได้เลยคะ เมื่อประกาศmodifier เป็นแบบ package ซึ่งโดยปกติ modifier แบบนี้จะเป็นค่า default นั่นคือเมื่อเราไม่ได้ประกาศ modifier อะไรเลย ระบบจะทำการตั้งค่าเป็น package ให้โดยอัตโนมัติคะ
ความคิดเห็น
แสดงความคิดเห็น