继承关系外面this到底代表的是谁?
1. 代码
package com.xrluo.type09;public class Test3{ public static void main(String[] args) { System.out.println("new的子类============================================================>"); Zi zi = new Zi(); zi.show2(); System.out.println("new 的父类===========================================================>"); Fu fu = new Fu(); fu.show2(); }}class Fu{ Fu() { System.out.println(this); show(); } void show() { System.out.println("fu.show被调用..........."); System.out.println(this); } void show2() { System.out.println(this); show(); }}class Zi extends Fu{ int num = 8; Zi() { System.out.println("num数值:" + num); } void show() { System.out.println("zi.show被调用............." + num); }}
2. 输入后果
new的子类============================================================>com.xrluo.type09.Zi@6e0be858zi.show被调用.............0num数值:8com.xrluo.type09.Zi@6e0be858zi.show被调用.............8new 的父类===========================================================>com.xrluo.type09.Fu@61bbe9bafu.show被调用...........com.xrluo.type09.Fu@61bbe9bacom.xrluo.type09.Fu@61bbe9bafu.show被调用...........com.xrluo.type09.Fu@61bbe9baProcess finished with exit code 0
3. 总结
类外面的this关键字,并不代表以后所在的类,代表的是实例对象的类
- new的是子类的话,this代表的是子类对象.
- new的是本类的话,this代表的就是以后所在类.