**本文正在参加「Java主题月 – Java Debug笔记活动」,详情查看 活动链接 **
问题:
在python走过来可以这样做:
from a import b as c
复制代码
在Java中应该怎样做这样的操作,我试着这样导入结果出现了冲突
——————————以下为回答,按支持票数排序———————————-
回答1(支持票数528):
Java中没有给导入取别名的机制,你没有办法给两个导入的类取相同的名字并且没有限制的使用。
导入一个类并使用全限定名称,即:
import com.text.Formatter;
private Formatter textFormatter;
private com.json.Formatter jsonFormatter;
复制代码
回答2(支持票数77):
如其他答案所述,Java没有提供这个功能.
这个功能曾被多次要求实现,如:JDK-4194542: 类名别称 或 JDK-4214789: 扩展导入允许重命名导入的类型
评论中提到:
这不是一个不合理的请求,这几乎不是必需的。使用完全限定的名称不是一个问题(除非库确实左右重复使用相同的简单名称,这是不好的方式)。
无论如何,它不具有让语言更改的价值/性价比。
因此,我想我们不会在任何时候从Java中看到此功能
回答3(支持票数67):
值得注意的是Groovy具有此功能:
import java.util.Calendar
import com.example.Calendar as MyCalendar
MyCalendar myCalendar = new MyCalendar()
复制代码
回答4(支持票数24):
Java不允许您这样做。您需要通过其全限定名来引用其中一个类
回答4(支持票数4):
Java还没有这个,这很荒谬。Scala拥有它:
import com.text.Formatter
import com.json.{Formatter => JsonFormatter}
val Formatter textFormatter;
val JsonFormatter jsonFormatter;
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END