简单说明:使用时
SuperClass obj = new SubClass();
仅
SuperClass可访问其中定义的公共方法。中定义的方法
SubClass不是。
使用时
SubClass obj = new SubClass();
定义的公共方法
SubClass也可以与
SuperClass公共方法一起访问。
两种情况下创建的对象都是相同的。
例如:
public class SuperClass { public void method1(){ }}public class SubClass extends SuperClass { public void method2() { }}SubClass sub = new SubClass();sub.method1(); //Valid through inheritance from SuperClasssub.method2(); // ValidSuperClass superClass = new SubClass();superClass.method1();superClass.method2(); // Compilation Error since Reference is of SuperClass so only SuperClass methods are accessible.


