Java中一个类顶用this 但是调试时发现this不是指向本类的对象,而是指向子类的对象 这是什么原因

Java中一个类中用this 但是调试时发现this不是指向本类的对象,而是指向子类的对象 这是什么原因
什么情况下会产生这种现象
------解决思路----------------------
多态
------解决思路----------------------
多态== 父类引用指向子类对象(+继承+重写),即你说的这个情况。
------解决思路----------------------
楼上已经说了,是多态,给你配一段代码,可能会比较清楚一些。希望对你有用。


/**
 * Created by cashlu on 14/11/16.
 */

//Father类为父类,有一个成员变量name,构造器函数中给name赋值为Father。
//Father类中还有一个方法printName(),返回对象的name属性。
public class Father {
    String name;
    public Father(){
        name = "Father";
    }

    public String printName(){
        return this.name;
    }

    public static void main(String[] args) {

        //下面这一行就是所谓的“父类引用指向子类对象”,这是JAVA多态的特性。
        Father t = new Son();
        //输出对象t的name属性,结果为Son,t所指向的对象,实际上是son对象
        System.out.println(t.printName());
        System.out.println(t.getClass());
    }
}

//Son是子类,继承了父类的printName()方法,构造器重写了,将name属性赋值为Son
class Son extends Father {
    public Son(){
        name = "Son";
    }
}