public class A {
class B {
}
}
在另一个包中的Main class怎么构造B呢??
public Main {
public static void main(String[] args) {
A a = new A();
A.B b = a.new A.B();
}
}
分析:
1、首先,想要访问到B,总得先能访问到A吧,除非B是public的,或者B是protected的,B的子类能访问到B。
2、现在B是default,也就是说,Main中想访问B就只能先访问到A。但毕竟B是default的,所以如果A没有实例化的话,仅仅通过路径A.B还是无法构建B。所以,只能通过实例化A后的对象来调用B的构造器,毕竟B是A的内部类,A的实例是可以访问到B的。
浙公网安备 33010602011771号