註冊 | 登入 | 全文檢索 | 排行榜 |
![]() |
» JWorld@TW
» Java 新手區
![]() ![]() |
![]() ![]() ![]() ![]() |
本主題所含的標籤 |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] |
ezway
![]() ![]() ![]() ![]() ![]() ![]() 發文: 61 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 執行了不一樣的Test.class ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:ezway] |
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ezway wrote: 我一共執行了3次: 第一次:執行Test.class-----出現怪碼 第二次:執行CH04_07.class-----正常 第三次:執行Test.class----正常執行,印出"c" 第一次和第三次所執行的source File是一樣的,差別在有重新compile。 這樣有差嗎? ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] |
Duncan
![]() 還隱隱作痛 版主 ![]() 發文: 7816 積分: 39 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() leo88813 wrote: 檢查你的 classpath,此 Test 非彼 Test。你一定常用 Test 來為你的測試用小程式 main class 命名,導致你的檔案系統裡有一個以上的 Test.class。 ![]() ![]() 給我 辣味豆腐 其餘免談 |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:Duncan] |
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() Duncan wrote: 沒錯沒錯我的確常用Test來作為我測試用的程式的class名,這樣會有問題嗎? 您說此Test非彼Test?明明都用同一個source file compile的為什麼會不一樣呢? 我的classpath設定為: . (就只有一個點) ※更正一下,上一篇回覆文第三次的執行結果為正常,印出"c"(原文已更正) ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:ezway] |
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ezway wrote: 喔!....對吼....是執行了不一樣的Test.class 可是都同一個SourceFile compile出來的....怎麼會差別那麼多捏? 路徑都一樣喔!第2次compile Test.java 只是把原來的Test.class覆蓋掉了 然後結果就變成正確的了!...真是奇怪啊,我有點懷疑我的classpath有問題 可是,我只設了一個"."啊! ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] |
Duncan
![]() 還隱隱作痛 版主 ![]() 發文: 7816 積分: 39 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() leo88813 wrote: . 指的是當前目錄,如果你在不同的目錄下執行 java Test,而每個目錄下有不同的 Test.class,那麼執行結果不同是很正常的。 做些什麼事只有你最清楚,但是從你描述的一切看起來很明顯是你有一個以上的 Test.class 同時存在,只是你自以為你執行到的是你剛編譯的 source file 的輸出,其實不然。 ![]() ![]() 給我 辣味豆腐 其餘免談 |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:Duncan] | ||||||
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() Duncan wrote: 您說的我以我所理解的重新講一次,您看看是不是這樣? 有兩個 Test.java file分別為: 1. C:\SCJP\Test.java
2. C:\JAVA HOME\Test.java與
兩者會互相影響對不對(兩者是不同的Source code)?
是不是這樣的意思啊? 可是如果真的這樣,那相同檔名儘管路徑不同也不可以取相同嚕? ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] | ||||||
ezway
![]() ![]() ![]() ![]() ![]() ![]() 發文: 61 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() leo88813 wrote: 整個java package的設計,就是,如果不是在同一個目錄下,你可以取相同的檔名. c:\SCJP\ 下執行 java Test 會出現abcde c:\JAVA HOME\ 執行java Test 會出現12345 這2個是完全沒有關係的. 希望你能看一下精華區中,有關package,classpath,import之類的文章. 前輩們有更詳細的解答 :Q ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:ezway] |
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ezway wrote: 這位大大,我當然知道兩個不同路徑相同檔名是完全沒有關係的! 可是之前Duncan大大的回覆讓我很疑惑啊!? ↓ ↓ Duncan:. 指的是當前目錄,如果你在不同的目錄下執行 java Test,而每個目錄下有不同的 Test.class,那麼執行結果不同是很正常的。 ![]() ![]() |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] | ||
Duncan
![]() 還隱隱作痛 版主 ![]() 發文: 7816 積分: 39 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() leo88813 wrote: 會執行到哪一個 Test.class 就是看你的 classpath 怎麼設定。你在 c:\JAVA HOME 目錄下打 java Test,如果 classpath 的設定是 c:\SCJP(或是 c:\SCJP 在 c:\JAVA HOME 之前),那麼執行的就是 c:\SCJP\Test.class。 ![]() ![]() 給我 辣味豆腐 其餘免談 |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] |
Duncan
![]() 還隱隱作痛 版主 ![]() 發文: 7816 積分: 39 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() leo88813 wrote: 你不覺得上面這句話和 ezway 的: c:\SCJP\ 下執行 java Test 會出現abcde c:\JAVA HOME\ 執行java Test 會出現12345 是同樣意思嗎? ![]() ![]() 給我 辣味豆腐 其餘免談 |
作者 | Re:使用Switch會出現亂碼然後另外compile 一個書上的範例程式又OK了! [Re:leo88813] |
leo88813
![]() ![]() ![]() ![]() ![]() ![]() 發文: 63 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 喔...對喔...我好像誤解了您的意思... 嗯...或許是我自己搞錯了路徑吧! ![]() ![]() ![]() |
» JWorld@TW » Java 新手區 |
![]() ![]() ![]() ![]() |
![]() ![]() ![]() |