第二阶段day02多态抽象类接口_第1页
第二阶段day02多态抽象类接口_第2页
第二阶段day02多态抽象类接口_第3页
第二阶段day02多态抽象类接口_第4页
第二阶段day02多态抽象类接口_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

多态&抽象类&接口昨日复习

什么是继承硬件系统继承的好处是硬件系统java中继承的特点是硬件系统

四种权限修饰符是硬件系统

final关键字的特点是硬件系统static修饰的成员访问方式是硬件系统昨日复习

什么是继承让类与类之间产生了子父类关系继承的好处是提高代码的复用性和维护性java中继承的特点是只支持单继承、不支持多继承,但是可以多层继承

四种权限修饰符是

publicprotected默认private

final关键字的特点是修饰类:类不能被继承修饰方法:方法不能被重写修饰变量:变量就变成了常量static修饰的成员访问方式是直接通过类名点访问Contents目录

多态

抽象类接口

【理解】能够理解什么是多态

【理解】能够理解多态的成员特点

【应用】能够独立完成多态的案例【理解】能够理解什么是抽象类

【理解】能够理解抽象类的成员特点

【应用】能够独立完成抽象类的案例【理解】能够理解什么是接口

【理解】能够理解接口的成员特点

【应用】能够独立完成接口的案例

【应用】能够独立完成运动员和教练的案例目标TARGET什么是多态多态的前提要点提示多态的概述掌握程度:理解1.多态结视答1、什么是多态?2、多态的前提条件有哪些?1.多态结课堂问答答视课堂问答什么是多态

同一个对象,在不同时刻表现出来的不同形态多态的前提条件有哪些

要有继承/实现关系

要有方法重写

要有父类引用指向子类对象1.多态课堂问答视知识总结结答多态中成员变量的访问特点多态中成员方法的访问特点要点提示多态中成员的访问特点掌握程度:应用2.多态中成员访问特点结视练答1、多态中成员变量的访问特点是什么?2、多态中成员方法的访问特点是什么?2.多态中成员访问特点结课堂问答答视课堂问答练多态中成员变量的访问特点是什么

编译看左边、运行看左边多态中成员方法的访问特点是什么

编译看左边、运行看右边2.多态中成员访问特点课堂问答视知识总结结练答练习动动手,练一下多态中成员的访问特点吧!提示定义一个Animal类,提供成员变量和成员方法定义一个Cat类,提供成员变量和成员方法,并重写父类方法多态形式创建对象,查看成员访问特点10分钟2.多态中成员访问特点多态中成员访问特点巩固练习视结练答多态的好处多态的弊端要点提示多态的好处和弊端掌握程度:理解3.多态的好处和弊端结视答练1、多态的好处是什么?2、多态的弊端是什么?3.多态的好处和弊端结课堂问答答视课堂问答练多态的好处

提高了代码的扩展性。

定义方法时,如果将父类型作为参数,在使用方法时,可以传递任意子类对象多态的弊端

不能使用子类特有的成员3.多态的好处和弊端课堂问答视知识总结结答练练习动动手,练一下多态的好处吧!提示定义一个Animal父类,提供eat方法定义Dog、Cat、Pig三个子类,分别重写eat方法定义AnimalOperator类,提供use方法。将Animal作为参数定义测试类,创建不同子类对象,并调用use方法10分钟3.多态的好处和弊端多态的好处巩固练习视结练答多态中的向上转型多态中的向下转型要点提示多态的向上转型和向下转型掌握程度:应用4.多态中的转型结视练多态中的向上转型

父类引用指向子类对象其实就是向上转型。例如:Animala=newDog();多态中的向下转型

将父类型的引用转换成具体的子类对象。转换格式:

子类对象名=(子类)父类引用;4.多态中的转型课堂问答视知识总结结练练习动动手,练一下多态中的转型吧!提示定义Animal类,提供eat方法定义Cat类,继承Animal类。重写eat方法。提供catchMouse方法通过多态创建对象,并实现向下转型,调用子类特有方法10分钟4.多态中的转型多态中的转型巩固练习视结练多态中转型的内存图解要点提示多态转型在内存中的变化过程掌握程度:理解5.多态转型内存图解结视多态转型的内存图解

5.多态转型内存图解课堂问答视知识总结结通过多态形式演示猫狗案例要点提示猫狗案例多态版掌握程度:应用6.猫和狗(多态版)结视练猫狗案例多态版重要步骤1.定义Animal类,提供name和age成员变量。eat方法2.定义Cat类,继承Animal类,重写eat方法3.定义Dog类,继承Animal类,重写eat方法4.通过多态创建对象,并给属性赋值,调用方法6.猫和狗(多态版)课堂问答视知识总结结练练习动动手,练一下多态版本的猫狗案例吧!提示定义Animal类,提供name和age变量,eat方法定义Cat类,继承Animal,重写eat方法定义Dog类,继承Animal,重写eat方法使用多态创建对象,为属性赋值,并调用方法10分钟6.猫和狗(多态版)猫狗案例多态版巩固练习视结练什么是抽象类什么是抽象方法如何定义抽象类和抽象方法要点提示抽象类概述掌握程度:理解7.抽象类结视什么是抽象类

一个类中如果有抽象方法,那么这个类就必须是一个抽象类什么是抽象方法

抽象方法指的是没有具体的方法实现如何定义抽象类和抽象方法

使用abstract关键字来修饰类和方法7.抽象类课堂问答视知识总结结抽象类的特点要点提示抽象类的特点掌握程度:记忆8.抽象类特点结视练答1、抽象类的特点有哪些?8.抽象类特点结课堂问答答视课堂问答练抽象类的特点1.抽象类和抽象方法必须使用abstract关键字修饰publicabstractclass类名{}publicabstract返回值类型方法名();2.抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类3.抽象类不能实例化,但是可以通过多态的方式创建子类对象4.抽象类的子类

要么重写抽象父类中所有的抽象方法

要么子类本身也是一个抽象类8.抽象类特点课堂问答视知识总结结练答练习动动手,练一下抽象类的特点吧!提示使用abstract关键字定义抽象类和抽象方法定义子类继承抽象父类。重写抽象方法使用多态形式创建对象,调用重写后的方法10分钟8.抽象类特点抽象类的特点巩固练习视结练答抽象类中的成员特点要点提示抽象类的成员特点掌握程度:理解9.抽象类的成员特点结视抽象类中的成员特点1.成员变量

既可以是变量、也可以是常量2.构造方法

有构造方法,目的是给父类中成员初始化3.成员方法

既可以是抽象方法、也可以是普通方法9.抽象类的成员特点课堂问答视知识总结结抽象类版本的猫狗案例要点提示猫狗案例抽象类版掌握程度:应用10.猫和狗(抽象类版)结视练猫狗案例抽象类版重点步骤1.定义动物类Animal

成员变量:nameage

构造方法:无参、带参

成员方法:get/set方法、抽象eat()

2.定义猫类Cat,继承Animal

构造方法:无参、带参

成员方法:重写eat()方法

3.定义狗类Dog,继承Animal

构造方法:无参、带参

成员方法:重写eat()方法

4.定义测试类,创建猫狗对象并赋值。调用方法10.猫和狗(抽象类版)课堂问答视知识总结结练练习动动手,练一下抽象类版的猫狗案例吧!提示定义动物类Animal定义猫类Cat,继承Animal定义狗类Dog,继承Animal定义测试类,创建猫狗对象并赋值。调用方法10分钟10.猫和狗(抽象类版)抽象类版猫狗案例巩固练习视结练上午复习

什么是多态硬件系统

多态的前提条件是硬件系

多态的成员特点是硬件系统多态的好处和弊端是硬件系统

抽象的关键字是硬件系统系统抽象类的成员特点是硬件系统上午复习

什么是多态同一个对象,在不同时刻表现出来的不同形态

多态的前提条件是要有继承/实现关系要有方法重写要有父类引用指向子类对象

多态的成员特点是成员变量:编译看左边、运行看左边成员方法:编译看左边、运行看右边多态的好处和弊端是好处:提高了代码的扩展性弊端:无法使用子类特有成员

抽象的关键字是

abstract抽象类的成员特点是可以有变量和常量,可以有抽象方法和普通方法,有构造方法什么是接口要点提示接口的概述掌握程度:理解11.接口结视什么是接口

接口就是一种公共的规范标准,只要符合规范标准,都可以使用java中的接口更多的体现在对行为的抽象11.接口课堂问答视知识总结结接口的特点要点提示接口的特点掌握程度:应用12.接口特点结视练答1、接口的特点有哪些?12.接口特点结课堂问答答视课堂问答练接口的特点1.如何定义接口publicinterface接口名{}2.如何实现接口publicclass类名implements接口名{}3.接口不能被实例化,可以通过多态形式创建实现类对象4.接口的实现类

要么重写接口中所有的抽象方法

要么实现类定义为抽象类12.接口特点课堂问答视知识总结结练答练习动动手,练一下接口的特点吧!提示定义接口Jumping,提供抽象jump方法定义猫类Cat,实现Jumping接口。重写jump方法通过多态创建对象,调用方法10分钟12.接口特点接口的特点巩固练习视结练答接口中的成员特点要点提示接口中的成员特点掌握程度:记忆13.接口的成员特点结视练答1、接口的成员特点有哪些?13.接口的成员特点结课堂问答答视课堂问答练接口的成员特点1.成员变量

只能是常量,默认修饰符为:publicstaticfinal2.构造方法

接口中没有构造方法3.成员方法

接口中可以有抽象方法,默认修饰符为:publicabstractJDK8以后可以有静态方法(后面学)JDK9以后可以有默认方法(后面学)13.接口的成员特点课堂问答视知识总结结练答练习动动手,练一下接口中的成员特点吧!提示定义一个接口:Inter,提供静态常量num和抽象方法method定义一个类InterImpl,实现Inter接口,重写method方法通过多态形式创建对象,使用num和method10分钟13.接口的成员特点接口中的成员特点巩固练习视结练答接口版本的猫狗案例要点提示猫狗案例接口版本掌握程度:应用14.猫和狗(接口版)结视练接口版猫狗案例主要步骤1.定义接口Jumping,提供抽象方法跳高jump

2.定义动物类Animal

成员变量:nameage

构造方法、get和set方法 抽象eat方法

3.定义猫类Cat,继承Animal,实现Jumping

重写两个抽象方法

4.定义狗类Dog,继承Animal,实现Jumping

重写两个抽象方法

5.定义测试类,完成代码测试14.猫和狗(接口版)课堂问答视知识总结结练练习动动手,练一下接口版猫狗案例吧!提示定义接口Jumping,提供抽象方法jump()定义Animal类,提供name、age成员变量。抽象方法eat()定义猫类Cat,继承Animal,实现Jumping。重写抽象方法定义狗类Dog,继承Animal,实现Jumping。重写抽象方法定义测试类,完成代码测试10分钟14.猫和狗(接口版)接口版猫狗案例巩固练习视结练类和类之间的关系类和接口之间的关系接口和接口之间的关系要点提示类和接口的关系掌握程度:记忆15.类和接口的关系结视答1、类和类之间的关系是什么?2、类和接口之间的关系是什么?3、接口和接口之间的关系是什么?15.类和接口的关系结课堂问答答视课堂问答类和类之间的关系

继承关系,可以单继承,不能多继承,但是可以多层继承类和接口之间的关系

实现关系,可以单实现,也可以多实现

还可以继承一个类的同时,再实现多个接口接口和接口之间的关系

继承关系,可以单继承、也可以多继承15.类和接口的关系课堂问答视知识总结结答抽象类和接口的区别要点提示抽象类和接口的区别掌握程度:记忆16.抽象类和接口的区别结视答1、抽象类和接口的区别是什么?16.抽象类和接口的区别结课堂问答答视课堂问答抽象类和接口的区别1.成员区别

抽象类:变量、常量、构造方法、普通方法、抽象方法

接口:常量、抽象方法2.关系区别

类和类:继承关系,单继承

类和接口:实现关系,单实现、多实现

接口和接口:继承关系,单继承、多继承3.设计理念区别

抽象类:完成的是一些共性功能的抽取

接口:完成的是一些特性功能的抽取16.抽象类和接口的区别课堂问答视知识总结结答运动员和教练案例的分析步骤要点提示运动员和教练案例分析掌握程度:理解17.运动员和教练案例分析结视运动员和教练案例的重要步骤定义说英语接口

成员方法:说英语();定义抽象人类

成员变量:姓名,年龄;构造方法:无参,带参;成员方法:get/set方法,吃饭();定义抽象教练类,继承人类

构造方法:无参,带参;成员方法:教();定义抽象运动员类,继承人类

构造方法:无参,带参;成员方法:学习();定义具体篮球教练类,继承教练类

构造方法:无参,带参;成员方法:重写吃饭(){…},重写教(){…}定义具体乒乓球教练类,继承教练类,实现说英语接口构造方法:无参,带参;成员方法:重写吃饭(){…},重写教(){…},重写说英语(){…}定义具体篮球运动员类,继承运动员类

构造方法:无参,带参;成员方法:重写吃饭(){…},重写学习(){…}定义具体乒乓球运动员类,继承运动员类,实现说英语接口构造方法:无参,带参;成员方法:重写吃饭(){…},重写学习(){…},重写说英语(){…}定义测试类,写代码测试17.运动员和教练案例分析课堂问答视知识总结结运动员和教练案例的代码实现要点提示运动员和教练案例代码实现掌握程度:应用18.运动员和教练案例代码实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论