Java语法表达式.new MyClass



具有此功能

public ParameterMethodParameterBuilder withParameter() {
        MethodParameter parameter = new MethodParameter();
  return withParameter(parameter).new ParameterMethodParameterBuilder(parameter);
}

以下的压力是什么意思

withParameter(parameter).new ParameterMethodParameterBuilder(parameter)
语法obj.new Inner()创建并返回内部类(*)Inner的一个实例,该实例链接到封装类的实例obj

当声明内部类时,需要封装类的实例来实例化内部类。你所面对的语法正是为了这个目的。

这里有一个最简单的例子:

public class MainClass {
    public class InnerClass {
    }
}

您可以通过以下方式实例化InnerClass

MainClass mc = new MainClass();
mc.new InnerClass();

(*)内部类=非静态嵌套

ParameterMethodParameterBuilderwithParameter(MethodParameter parameter)方法的任何返回类型的内部类。

您需要创建一个内部类ParameterMethodParameterBuilder的新对象,该对象具有由withParameter(parameter)方法返回的外部引用

它创建了一个嵌套类的新实例:

public class MethodParameter() {
    public class ParameterMethodParameterBuilder(/* ... */) {
        //...
    }
    //...
}

withParameter(parameter)方法返回MethodParameter实例,并且您正在尝试创建

ParameterMethodParameterBuilder静态内部类的对象,

所以语法是这样的MethodParameter.new ParameterMethodParameterBuilder (parameter)创建您的内部静态类对象

有任何问题请告诉我。

最新更新