在Python中,您可以执行以下操作:

from a import b as c

在Java中如何做到这一点,因为我有两个冲突的导入。


当前回答

可笑的是java还没有这个功能。Scala有它

import com.text.Formatter
import com.json.{Formatter => JsonFormatter}

val Formatter textFormatter;
val JsonFormatter jsonFormatter;

其他回答

可笑的是java还没有这个功能。Scala有它

import com.text.Formatter
import com.json.{Formatter => JsonFormatter}

val Formatter textFormatter;
val JsonFormatter jsonFormatter;

Java中没有导入别名机制。不能导入两个同名的类,并且都使用非限定类。

导入一个类,并对另一个类使用完全限定名,即。

import com.text.Formatter;

private Formatter textFormatter;
private com.json.Formatter jsonFormatter;

Java不允许这样做。您需要通过其中一个类的全限定名引用它,而只导入另一个类。

除非非默认构造函数有问题,否则你总是可以这样做(而我们都在等待Java语言规范赶上):

public class YaddaYadda
{
    private static class ZU extends eu.zrbj.util.ZrbjUtil_3_0 { }

    public void foo (String s)
    {
        if (ZU.isNullOrEmpty(s))
        {
            // ...

对于项目范围的使用,“import”类可以进入一个单独的类文件,为导入提供一个定义点。

这是一个救星,特别是对于“库”类,即静态实用函数的集合。首先,它使您能够对这些野兽进行版本控制(如示例所示),而不会给用户带来很大不便。

可能值得注意的是,Groovy有这样的特性:

import java.util.Calendar
import com.example.Calendar as MyCalendar

MyCalendar myCalendar = new MyCalendar()