

问题一: 想问一下关于这里第二张图调用第一张图里的attack方法,调用的原理和格式之类的东西,总感觉有点不太明确,想系统性的学习一下
问题二: 还有关于第一张图中的 this.getName 和 role.getName ,为什么会形成this是第一个创建的角色的名字,而role指向第二个创建得角色
- 首先 调用 attack 方法的对象 r1 ,在 attack 方法里 就是 用 this 指代【this 表示当前的类实例对象】;通过this.getName,就是调用 r1的getName方法
- 入参 role 对象,在第二张图传入的是 r2, 通过 role.getName ,就是 调用 r2的 getName方法;
(1) 这个你看下教材比较好
(2) this表示当前所属的实例,因为你调用的是 r1.attack(r2),所以是r1,如果是r2.attack(r2),那么this就是r2
this就是谁调用就是谁啊