我使用Logger
从包java.util.logging
导入了类import java.util.logging.Logger
。除此之外,根据要求我需要从其他包中导入用户创建的类。但问题是,该类名称还Logger
[在用户定义的包中创建]。我没有权限更改该用户定义的类和包的名称。这两个类都有静态方法。
所以我需要导入两个类,那么什么是可行的解决方案?
答案 0 :(得分:5)
拨打完整的班级名称,即package.class
例如,如果您要创建一个名为File
的类,您仍然可以使用java.io.File
而不导入它。
导入只允许您使用较短的名称。类的全名由它的包名称
在你的情况下,你有:some.user.package.Logger
,所以你可以使用它。
some.user.package.Logger userLogger = new some.user.package.Logger();
java.util.logging.Logger realLogger = java.util.logging.Logger.getAnonymousLogger(); //or whatever...
答案 1 :(得分:0)
您必须指定完整路径。
Logger logger = new Logger();
com.abc.Logger yourLogger = new com.abc.Logger();
答案 2 :(得分:0)
当使用其中一个名称相同但包装不同的类时,
使用完全限定的类名,如:
java.util.logging.Logger logger;
mypackage.Logger myLogger;
答案 3 :(得分:0)
最好的方法是在类中使用完全限定的类名,而不导入任何内容