![](/img/trans.png)
[英]Do I have to include classes from the same package in AOSP java?
[英]What to do if 2 classes have the same package statement
我遇到了一個問題,其中來自 2 個不同包(屬於同一組)的 2 個類具有相同的名稱和 package 語句
Package 1
package com.placeholder.constants.Constants
public class Constants{}
Package 2
package com.placeholder.constants.Constants
public class Constants{}
如果我正在研究 Package 1 但想在 Package 2 中引用此常量 class ,這是否可能?
其中來自 2 個不同的 package 的 2 個類
但它們不是兩個不同的包。 您為兩者使用了相同的 package 名稱。
想在 Package 2 中引用這個常量 class
使用任一:
由於顯而易見的原因,您不能在同一個 package 中定義兩個具有相同名稱的類。
Java 中的包的目的是創建一個命名空間。 您重復的 class 名稱違反了該命名空間。
package com.placeholder.constants.Constants
這不是正確的 package 名稱。 您已將 class 名稱混合到 package 名稱中。 package 應該是package com.placeholder.constants
。
您的這個交叉命名問題增加了您的 class 設計不是最優的可能性。 您可能想暫停片刻,看看更大的圖景。
如果你有那么多常量要命名,我想知道其中一些是否真的應該是enum
類型。 請參閱Oracle 的教程。 提示:在 Java 16 及更高版本中,枚舉可以在本地定義,在一個方法內 - 定義為嵌套 class 或定義為單獨的 ZA2F2ED4F8EBC2CBB4C21A29DC40AB6DZ 的新替代方法。
您正面臨名稱沖突。 如果可能,嘗試輸入package.class_location的全名
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.