![](/img/trans.png)
[英]Is there any way to define a private class in Java which only other classes in the same package can access it?
[英]why class define in other package can not implement interface or extends class define in default package in java
下面的接口在默認包中定義
public interface Foo{
}
package com.code
public class MyClass implements Foo{
}
上面的代碼將給出以下編譯錯誤:
Foo無法解析為鍵入
為什么???
這就是為什么建議您將所有代碼放入包中的原因。
當您在不使用包名稱的情況下引用類或接口時,假設該類與引用它的代碼位於同一個包中。 所以編譯器看到了這個:
package com.code
public class MyClass implements com.code.Foo{
}
由於無法在代碼中引用默認包,因此請勿使用它。
如果您希望您的類實現一個接口,那么您應該將它們都放在同一個包中或者在創建類之前導入包含該接口的包或者在聲明中使用該接口的整個路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.