实验报告【实验名称】 第四章 接口和多态 【实验目的】1
学习 Java 中抽象类的概念2
学习接口的概念3
学习面对抽象的编程以及面对接口的编程【实验原理】1
Java 程序设计基本原理2
面对对象程序设计基本原理【实验内容】一、 结合本次课程,简答:1、什么是上转型对象
调用子类方法原则
将子类赋给父类时,称父类为子类的上转型对象
方法原则:只能调用子类继承和重写的方法,不能调用子类中新的方法
2、父类创建的对象和其子类的上转型对象异同
相同点:都可以对父类里的方法进行调用
不同点:上转型对象调用的父类方法只能是子类重写之后的,而父类创建的对象调用的是自身定义的
3、为什么引入抽象类和抽象方法
抽象类只关怀操作,不关怀操作具体实现细节,可以使程序员把精力集中在程序的设计上 ,而不必拘泥于细节的实现
也就是说设计者只需设计好方法,而具体方法实现由子类的设计者实现
减轻了程序员的负担
4、接口和抽象类的异同
相同点:二者都是需要背继承和实现后才有实际意义,并且二者都有抽象类型
不同点:抽象类属于类,接口是一种新的数据类型;抽象类的属性可以是常量和变量,而接口中只能是常量;抽象类中可以有抽象方法和普通方法,而接口中只能是抽象方法;抽象类将其抽象方法的实现交给其子类,而接口将其抽象方法的实现交给实现该接口的类
5、接口和类的异同
相同点:接口和类都是数据类型;属性中都有常量,方法中都有抽象类方法
不同点:类的属性是变量和常量,方法需要实现,而接口的属性只能是常量,方法只需声明;类中可以有抽象方法和普通方法,而接口中只能是抽象方法;类的属性可以是常量和变量,而接口中只能是常量;类中可以有抽象方法和普通方法,而接口中只能是抽象方法
二、程序设计实验一:按要求完成程序1
设计一个抽象类 People,具有抽象方法 say();2
设计子类 ChinaPeople,AmericaP