继承关系里面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@6e0be858
zi.show被调用.............0
num数值:8
com.xrluo.type09.Zi@6e0be858
zi.show被调用.............8
new 的父类===========================================================>
com.xrluo.type09.Fu@61bbe9ba
fu.show被调用...........
com.xrluo.type09.Fu@61bbe9ba
com.xrluo.type09.Fu@61bbe9ba
fu.show被调用...........
com.xrluo.type09.Fu@61bbe9ba
Process finished with exit code 0
3. 总结
类里面的this关键字,并不代表当前所在的类,代表的是实例对象的类
- new的是子类的话,this代表的是子类对象.
- new的是本类的话,this代表的就是当前所在类.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。