[問題] access modifier的問題

看板java作者 (Pony)時間18年前 (2007/04/29 14:05), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/5 (看更多)
最近在測試 Java 的 Access Modifier (public, protected, private, none) 在編譯的時候發生了一件詭異的事情 先附上程式碼: ==Array.java== package simple; class Array { public Array() { System.out.println( "simple.Array"); } } ==List.java== package simple; public class List { Array a = new Array(); public Array b = new Array(); public List(){ System.out.println( "com.bruceeckel.util.List"); } } ==TestLib.java== import simple.*; public class TestLib { public static void main(String[] args) { // Array is not public accessible. // Array a = new Array(); List l = new List(); // cannot access a since it’s in package scope // System.out.println(l.a); System.out.println(l.b); } } 假設目前的路徑是 d:\java\id9455\simple Array.java 和 List.java 放在 d:\java\id9455\simple TestLib.java 放在 d:\java\id9455 問題來了 在編譯的時候 如果在 d:\java\id9455\simple 下 javac *.java 可以正常編譯 但如果是:先編譯 Array.java,再編譯 List.java 卻會發生找不到 Array 這個 Class 的問題 根據我對 none 這個 access modifier 的認識 他應該要能夠讓在同一個 Package 裡其他的Class 存取 但錯誤訊息卻找不到這個Class 請問一下這是為什麼呢 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.169.97
文章代碼(AID): #16D3MqKU (java)
討論串 (同標題文章)
文章代碼(AID): #16D3MqKU (java)