วันศุกร์ที่ 1 กรกฎาคม พ.ศ. 2554

package ของ JAVA

Java Class Library (Package)
ในJavaจะมีClassย่อยต่างๆที่ถูกเขียนขึ้นมาเพื่อให้เรียกใช้ได้ทันที ไม่ต้องเสียเวลาเขียนเอง โดยสามารถเรียก Class ต่างๆเหล่านั้นขึ้นมาทำงานได้ตามแต่ละความสามารถของClassเลย หรือเรียกClassเหล่านี้ว่าLibrariesนั่นเอง ซึ่งก็เหมือนกับภาษาระดับสูงอื่นๆทั่วไปที่จะมีLibrariesของตัวเอง แต่ในJavaจะเรียกต่างกันคืออาจเรียกว่าเป็นPackageก็ได้ โดยในJavaก็จะมีPackageให้เลือกใช้งานหลากหลาย หรือบางทีสามารถนำPackageที่มีคนเขียนขึ้น หรือเรียกว่าไม่ได้อยู่ในLibrariesที่Javaเตรียมให้มาประยุกต์ใช้ในการเขียนโปรแกรมได้

Package scope (ขอบเขตของแพ็คเกจ)
หากต้องการให้ตัวแปรหรือmethodในclassของเราไม่ให้ผู้อื่นสามารถเข้าถึงตัวแปรหรือmethodของเราได้โดยตรงและเพื่อไม่ให้มันเป็นที่สาธารณะ เนื่องจากภายใต้การกำกับดูแลในการออกแบบของ Java จะไม่สามารถประกาศประกาศการเข้าถึงPackageโดยDefaultได้ สมาชิกคนอื่น ของแพคเกจจะสามารถมองเห็น แต่classภายนอกที่ไม่ได้สืบทอดจะไม่สามารถเรียกใช้ตัวแปรหรือMethodที่อยู่ในclassได้

Public scope
ใช้สำหรับตัวแปร ,Method และ Class ใดๆ ที่สามารถให้นำไปใช้กับ Class หรือ โปรแกรมอื่นๆ ได้



Private scope
ใช้สำหรับตัวแปร หรือ Method ที่ให้เรียกใช้ได้เฉพาะภายใน Class ที่สร้างตัวแปร หรือ Method นั้นๆ ขึ้นมาเท่านั้น
หากมีตัวแปรหรือMethodที่เราต้องการที่จะใช้ประกาศเป็นส่วนตัว แม้จะextends classของเราก็ไม่สามารถใช้งานได้ ถ้าใช้private method จะได้รับerror message โดยถ้าเราตั้งใจเลือกชื่อสำหรับprivate method ที่จะใช้งานแล้วโดย superclass ถ้ามีชื่อแตกต่างกัน superclass จะได้รับในแบบของsuperclass ส่วนเราจะได้รับในแบบของเรา MethodและFunctions จะทำงานนอก classได้ทันที กล่าวคือถ้าไม่ได้เป็นPrivate Methodทั้งหมด ที่กล่าวมานั้นใช้ั สำหรับตัวแปรPrivate
Private method จะไม่ทำอะไรที่ไม่คาดคิด และไม่สามารถเขียนแทนที่ ได้


Protected scope
ภายในคลาสก็จะมีตัวแปรหรือmethodอยู่ภายในคลาสของเรา ซึ่งเราไม่ต้องการให้ผู้อื่นมาขอใช้ได้โดยตรงในคลาสเรา ดังนั้นเราจะประกาศ Protected ไว้ข้างหน้า เมื่อมีคลาสอื่นมาextendคลาสเราก็สามารถนำตัวแปรหรือ method เหล่านี้ไปใช้งานได้ ถึงแม้ว่าจะไม่ได้อยู่ในแพคเกจเดียวกัน การนำไปใช้ก็มีข้อจำกัด
การใช้ Protected เมื่ออยู่ในแพคเกจเดียวกัน สามารถเข้าถึงกันได้แม้ว่าไม่ได้สืบทอดกันมา แต่ถ้าต่างแพคเกจ จะต้องอาศัยการสืบทอดมาช่วยในการทำงานในคลาสนั้น ซึ่งเปนการนำไปใช้งานที่แตกต่างของ Protected และ Package


static
คือการทำให้ตัวแปรและ Method ที่ต้องการมีค่าคงที่ สามารถนำไปใช้ได้กับทุกๆ ส่วนของ Class โดยค่านั้นจะไม่มีการเปลี่ยนแปลงไม่ว่ากรณีใดๆ


void
ใช้กับ Method โดยเป็นการกำหนดให้ไม่มีการส่งค่าใดๆ กลับมาให้กับ Method นี้ (ดังนั้นไม่ต้องใช้คำสั่ง return)

ไม่มีความคิดเห็น:

แสดงความคิดเห็น