[英]JavaCompiler didn't catch error on redefinition of a Java class.
在學習Java的過程中,我嘗試了這段成功編譯並運行的代碼。 有人可以解釋一下為什么編譯器沒有生成任何錯誤嗎? 我導入了包括java.util> Scanner在內的完整程序包,所以應該不會有一個錯誤,即在util程序包中已經定義了Scanner,我想在這里重新定義它?
import java.util.*;
class Scanner
{
public static void main(String... args)
{
Scanner c = new Scanner();
}
}
我的Java基礎知識不是很清楚,如果這似乎完全是菜鳥的問題,並且在這個論壇上沒有類似的問題,請耐心等待,所以我想最好再問一下。
一個類不僅由其名稱定義,而且由其包定義。
在您的情況下,您有兩個不同的類:
對於編譯器,這些類是不同的,這就是為什么不會出現編譯錯誤的原因。
有關代碼示例和可能的用例的更詳細的答案,請在此處查看: 導入兩個具有相同名稱的類。 如何處理?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.