Re: [問題] access modifier的問題

看板java作者時間18年前 (2007/05/03 14:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/5 (看更多)
> ==> id9455.bbs@ptt.cc (Pony) 的文章中提到: > 最近在測試 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 > 請問一下這是為什麼呢 謝謝 我在測試上是沒有任何問題產生的 應該是你的設定上有問題吧 WORK_HOME設定正確了嗎? CLASSPATH有把WORK_HOME, .這兩個加進去嗎? -- * Origin: 中山大學-美麗之島BBS * From: 202.173.49.133
文章代碼(AID): #16EO7b00 (java)
文章代碼(AID): #16EO7b00 (java)