พูดง่ายๆ ก็คือจำกัดห้อง ถ้าข้ามห้อง ไม่ให้เข้าถึง นั่นเอง
ลองมาลงภาคสนามกันครับ ให้สร้าง Car.java ไว้ใน package myPackage2 ดังนี้
เขียนโค้ดเข้าไปดังนี้
package myPackage2; public class Car { protected void x() { System.out.println("car x value"); } }จากนั้นสร้าง ProtectedExample.java ไว้ใน myPackage ดังนี้
เขียนโค้ดเข้าไปดังนี้
package myPackage; public class ProtectedExample { public static void main(String[] args) { myPackage2.Car c = new myPackage2.Car(); c.x(); } }
ผลการทำงาน
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - x() has protected access in myPackage2.Car
at myPackage.ProtectedExample.main(ProtectedExample.java:8)
หากใช้โปรแกรม Netbeans ในการเขียนโปรแกรม มันจะแจ้งบอกว่าสาเหตุทันที
ไม่มีความคิดเห็น:
แสดงความคิดเห็น