JAVA内部类问题 求解释

2025-01-21 12:02:37
推荐回答(4个)
回答1:

你理解错了
看来你是java初学者呢
第二行:是一个返回类型为Destination 对象的一个成员方法(成员函数)
最后一行Parcel4 p = new Parcel4(); 这句理解吧,这是对象的实例化
p.dest("Tanzania");这句也应该要理解,这是通过已经实例化的对象去调用其成员非static方法
由于这个方法的返回类型是Destination
所以有了这句 Destination d = p.dest("Tanzania");

回答2:

Destination 是接口,PDestination 是实现类 ,

public Destination dest(String s) {
....
return new PDestination(s);
}

Destination d = p.dest("Tanzania");

p 是Parcel4 的实例,dest(s);是Parcel4的方法,dest(String s) {}方法返回的类型是接口 Destination ,但是作为返回值必须是一个对象,接口是不能实例化的,所以就有了内部类PDestination 实现这个接口,然后new 出来作为返回值

回答3:

一个类的内部类是重新写,不能在类的外部访问一个类,但类属性和类方法可以访问外部。

回答4:

dest就是一个普通的函数,Destination 是函数的返回类型