//出自Thinking in Java 4
//它是如何调用的?参数是如何传递的?
//这Apple哪来的?不是应该是int chat String之类的吗
class Person {
public void eat(Apple apple) {
Apple peeled = apple.getPeeled();
System.out.println("Yummy");
}
}
class Peeler {
static Apple peel(Apple apple) {
return apple;
}
}
class Apple {
Apple getPeeled() {
return Peeler.peel(this);
}
}
public class PassingThis {
public static void main(String[] args) {
new Person().eat(new Apple());
}
}
3 回答
sanlelele
TA贡献8条经验 获得超3个赞
//这里出现的apple ↑↑↑↑ class Apple { Apple getPeeled() { //这里的this代指本类,就是这个apple类 return Peeler.peel(this); } }
//申请一个类型为apple的变量名字叫做peeled //由于etPeeled()方法是静态的,所以可以直接由类名调用. Apple peeled = apple.getPeeled();
添加回答
举报
0/150
提交
取消