任务一 什么是多态 为了进一步提高教学质量和学生学习的积极性,学校增加了一个教学督导组,目的是监督教师的教学情况以及学生的学习情况。 督导监督教师教学主要从以下几个方面监督: 1、教师上课是否上课表达准确。 2、讲解思路清晰。 监督学生上课情况: 1、不迟到、早退、旷课。 2、课堂认真学习。 任务二 抽象类 提问式多媒体教学 代码4-6的Person类中有一个函数learn()没有任何实现,也没有实现它的意义,那么能否在去掉Person类中的learn函数呢?如果不能,是否可以只是声明函数,而不提供实现呢? 任务三 父类和子类的相互转换 在上一单元学习中,我们知道,如果我们这样去声明和赋值一个对象: Person p = new Teacher(); 那么对象p的属性和函数也仅仅只包含在Person类中声明的属性和函数,要想使用Teacher类中独有的函数,比如getMajorField()函数是不可以的。是否有办法使用在子类中独有的方法呢? 作业和思考题: 1. 2. 3. 4. 计算交通工具运行1000公里需要的时间。 程序功能扩展 综合运用面向对象知识 抽象类 通过多态可以减少类中代码量,可以提高代码的可扩展性和可维护性。继承是多态课后小结: 的基础,没有继承就没有多态。 把子类转换为父类,称为向上转型,自动进行类型转换。把父类转换为子类,称为向下转型,必须进行强制类型转换。向上转型后通过父类引用变量调用的方法是子类覆盖或继承父类的方法,通过父类引用变量无法调用子类特有的方法。向下转型后可以访问子类特有的方法。必须转换为父类指向的真实子类类型,否则将出现类型转换异常ClassCastException。 抽象类不能实例化,抽象类中可以没有、可以有一个或多个抽象方法。子类必须重写所有的抽象方法才能实例化,否则子类还是一个抽象类。 instanceof运算符通常和强制类型转换结合使用,首先通过instanceof进行类型判断,然后进行相应的强制类型转换。 5、Java面向对象程序设计 课程教案
授课时间 授课方式 (请打√) 第7 周 第1、2、3 节 理论课√ 讨论课□ 实验课□ 习题课□ 其他□ 课次 课时 安排 1 3 授课题目(教学章、节或主题): 单元知识5 接口、常用修饰符和包 接口定义、修饰符、包 教学目的、要求(分掌握、熟悉、了解三个层次): 学习使用接口 理解面向接口编程 理解final和static修饰符的使用 了解其他限定符 教学重点及难点: 理解面向接口编程 理解final和static修饰符的使用 教 学 基 本 内 容 任务一 接口的定义与使用 方 法 手 段 提问式多媒体教学 在生活中,我们比较常见的接口就是usb接口了,现在大部分的鼠标、键盘、U盘等都统一使用usb接口,那么usb接口是如何做到无论插入什么设备都可以直接使用的呢? 任务二 final和static修饰符 Java中如何表示常量,如圆周率pi这样基本保持不变的值。 任务三 public、protected、friendly和private修饰符 在java中,还常见四种修饰符:public、protected、friendly(默认省略)和private,它们修饰类的方法和属性时有什么不同呢? 任务4 包 在java中,如果类名相同该怎么处理? 作业和思考题: 1. 使用接口实现打印机 2. static和final的使用 3. public、protected、friendly(默认省略)和private的使用 课后小结: 接口是java中实现多继承的重要手段,接口可以使java的代码更规范,从而实现“对扩展开放,对修改关闭”的开发原则。Java又叫面向接口编程。 static和final可以一起使用来定义一个常量,也可以分开使用。static可以修饰属性和方法,final可以修饰类、属性和方法。 Java中的其他限定符是为属性的访问范围设定的,常用的是public和private。