实验8 继承与多态 8.1 实验目的 (1) 理解类的继承,掌握变量隐藏、方法覆盖的概念。 (2)理解引用类型的变量的赋值转换原则。 (3)理解多态概念,掌握方法的匹配调用原则; (4)理解抽象类与接口的使用; (5)理解this和super的含义及使用。 (6)理解访问控制符的使用 8.2 知识要点 8.2.1 继承的概念 通过类的继承,祖先类的所有成员均将成为子类拥有的“财富”。但是能否通过子类对象直接访问这些成员则取决于访问权限设置。Object类是所有类的祖先。 8.2.2 构造方法与继承关系 构造方法不存在继承关系,子类中是如何给父类继承的属性赋初值呢? 子类通过调用父类的构造方法给父类的属性赋值,在子类的构造方法的第1行可以通过super去调用父类的构造方法,如果没有super调用,则默认调用父类的无参构造方法。所以,在父类中编写构造方法通常均要提供无参构造方法。 8.2.3 对象引用变量赋值原则 可以将子类的对象引用赋值给父类引用变量,由于父类能操作访问属性和方法的子类已全部继承。但将父类引用变量的值赋给子类引用变量就受到限制,必须进行强制转换,编译总是认可强制转换,但运行程序时如果不能正确转换就会报错。