Page 57 - วิศวกรรมซอฟต์แวร์
P. 57
การออกแบบซอฟต์แวร์เชิงวัตถุ 7-47
4.3 การก�ำหนดการเข้าถึงแบบแพ็คเก็จ (package) ท�ำได้โดยใช้เครื่องหมาย ~ หน้าแอตทริบิวต์ หรือ
โอเปอเรชั่น เพ่ือให้เข้าถึงได้โดยเฉพาะคลาสจากภายในแพ็คเก็จ (package) เดียวกันเท่านั้น
package1 ClassInSamePackage
BlogAccount
~countEntries()
aMethod()
package2
ClassInAnotherPackage SpecializedClassInAnotherPackage
ภาพท่ี 7.34 การกำ�หนดการเขา้ ถึงแบบแพค็ เก็จ
ท่ีมา: Kim Hamilton and Russell Miles. Learning UML 2.0. Figure 4-9.
จากภาพที่ 7.34 เป็นการก�ำหนดการเข้าถึงแบบแพ็คเก็จให้กับเมธอดชื่อ “countEntries()” ท�ำให้สามารถ
เข้าถึงได้จากเมธอด “aMethod()” ท่ีอยู่ในคลาสเดียวกัน และสามารถเข้าถึงได้จากคลาสชื่อ “ClassInSamePack-
age” ที่อยู่ในแพ็คเก็จเดียวกัน แต่ไม่สามารถเข้าถึงได้จากคลาสในแพ็คเก็จอื่น ก็คือคลาสช่ือ “ClassInAnother-
Package” และไม่สามารถเข้าถึงได้จากคลาสช่ือ “SpecializedClassInAnotherPackage” ซึ่งเป็นคลาสที่สืบทอด
ที่อยู่ต่างแพ็คเก็จกัน
4.4 การก�ำหนดการเข้าถึงแบบส่วนตัว (private) ท�ำได้โดยใช้เครื่องหมาย — หน้าแอตทริบิวต์ หรือ
โอเปอเรชน่ั เปน็ การกำ� หนดสทิ ธแิ บบเขม้ งวดทส่ี ดุ โดยเฉพาะคลาสตวั เองเทา่ นน้ั จะมองเหน็ คณุ ลกั ษณะและการปฏบิ ตั งิ าน
ภายใต้การก�ำหนดค่าน้ี