多态的理解

例如: class Father{ public void test(){ System.out.println("this is father"); } }

class Son extends Father{ public void test(){ System.out.println("this is son"); } }

public class Test{ public static void main(){ Father f=new Son(); f.test(); } }

结论是 this is son 对于这个大家都知道应该是多态,采用的是动态绑定的方法,问题是这个多态的原理是怎么实现的?或者说多态的核心是怎么一回事?我认为因为创建了一对象Son(),所以引用f就指向这个对象,故调用的是Son中的方法,但是不知道正解如何,希望有人能给予指点!

方法的话是调用实际对象里的,但是如果是变量的话就会调用Father里的,所以这里的text()方法将会调用Son里的方法

我觉得这只是多态的表现的特征,但是多态的内部特征还是没有涉及到。