博学实训软件工程java面向对象抽象类和接口_第1页
博学实训软件工程java面向对象抽象类和接口_第2页
博学实训软件工程java面向对象抽象类和接口_第3页
博学实训软件工程java面向对象抽象类和接口_第4页
博学实训软件工程java面向对象抽象类和接口_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

国家信息化人才培养工程(深圳博学)授权实训基地第三章

抽象类和接口博学实训软件工程java面向对象抽象类和接口第1页预习检验定义抽象类和抽象方法关键字是什么?定义接口语法是什么?抽象类和接口相同点和不一样点分别是什么?提问博学实训软件工程java面向对象抽象类和接口第2页本章任务模拟实现“愤恨小鸟”游戏博学实训软件工程java面向对象抽象类和接口第3页抽象类定义和使用了解接口概念了解面向对象设计标准了解抽象类和接口优势本章目标接口定义和使用点重了解抽象类概念点难点重博学实训软件工程java面向对象抽象类和接口第4页讲解:为何使用抽象方法和抽象类交通工具公交车类方法:

行驶(公路驾驶)地铁类方法:

行驶(地下轨道)自行车类方法:

行驶(人力蹬)实现父类行驶方法有意义吗?每个子类有独特行驶方法交通工具类(抽象类)交通工具类方法:行驶抽象方法:行驶博学实训软件工程java面向对象抽象类和接口第5页串讲:对比普通方法和抽象方法对比普通方法与抽象方法publicvoidshow(){System.out.println("hello");}publicabstractvoidshow();区分普通方法必须要有方法体,抽象方法不能有方法体(大括号也没有)抽象方法要用abstract修饰抽象方法必须存在于抽象类中博学实训软件工程java面向对象抽象类和接口第6页串讲:对比普通类和抽象类对比普通类与抽象类publicclassPerson{}Personp=newPerson();publicabstractclassPerson{}Personp=newPerson();区分抽象类要用abstract修饰普通类能够实例化,抽象类不能实例化简单说,抽象类是一个不能实例化类,它能够含有抽象方法或者普通方法博学实训软件工程java面向对象抽象类和接口第7页串讲:抽象类应用需求描述模拟“愤恨小鸟”游戏中各种鸟行为问题抽象类鸟飞行:弹射-飞叫:嗷---!(抽象方法)攻击分裂鸟攻击:分裂攻击火箭鸟攻击:加速冲撞分析使用抽象类定义鸟类飞行和叫为抽象类普通方法攻击为抽象类抽象方法在子类中实现攻击方法演示示例:抽象类应用博学实训软件工程java面向对象抽象类和接口第8页串讲:抽象类优势抽象类能够将已经实现方法提供给其子类使用,使代码能够被复用抽象类中抽象方法在子类中重写,确保了子类还含有本身独特征比如:鸟飞行和叫方法,不需在子类重复实现比如:每个鸟都有自己独特攻击行为经过抽象类指向其子类对象,能够实现多态博学实训软件工程java面向对象抽象类和接口第9页判断对错抽象类中只能定义抽象方法。申明抽象类和抽象方法都使用abstract关键字。抽象类不能实例化。小结提问博学实训软件工程java面向对象抽象类和接口第10页串讲:了解接口生活中接口是指一些企业和组织等制订一个约定或标准(USB)博学实训软件工程java面向对象抽象类和接口第11页串讲:了解接口Java中接口提供一个约定,使得实现接口类在形式上保持一致publicinterface

接口名{//抽象方法}语法定义和实现接口public类名implements

接口{//实现接口方法

//普通方法}演示示例:使用接口描述USB一个类实现一个接口,则要求实现接口中全部方法注意博学实训软件工程java面向对象抽象类和接口第12页串讲:对比抽象类和接口对比抽象类与接口publicabstractclassPerson{ //抽象方法

//普通方法}publicinterfacePerson{//抽象方法}区分抽象类使用abstract申明,接口使用interface申明抽象类能够包含抽象方法(必须使用abstract关键字)和普通方法接口只能包含抽象方法(无须使用abstract关键字)接口和抽象类一样,不能实例化抽象类与接口有什么区分?提问博学实训软件工程java面向对象抽象类和接口第13页讲解:认识抽象类不足

实现“愤恨小鸟”游戏中鸟叫行为抽象类鸟飞行:弹射-飞叫:嗷---!攻击(抽象方法)分裂鸟攻击:分裂攻击火箭鸟攻击:加速冲撞红色鸟攻击:普通攻击叫:喳喳炸弹鸟攻击:爆炸攻击叫:喳喳胖子鸟攻击:扔蛋攻击叫:不叫代码冗余,复用度差博学实训软件工程java面向对象抽象类和接口第14页讲解:使用接口优化程序设计将鸟叫行为定义为接口实现接口实现各种详细叫声将鸟叫行为作为抽象鸟类一个属性怎样用接口实现鸟叫行为,能有效防止代码冗余,又能确保扩展性?问题分析演示示例:使用接口优化程序设计博学实训软件工程java面向对象抽象类和接口第15页串讲:实现多个接口一个类只能继承一个父类,但能同时实现多个接口,也能够同时继承抽象类和实现接口class类名extends父类名implements接口1,接口2,……{

//类组员}语法extends必须位于implements之前一个类实现多个接口,要求实现多个接口中方法博学实训软件工程java面向对象抽象类和接口第16页串讲:实现多个接口示例某人是软件工程师,又是音乐家。怎样在Java程序中实现?分析定义人类作为抽象父类,包含人基本属性和行为定义编程接口,拥有编程能力定义作曲接口,拥有作曲能力等定义一个子类,继承人类,同时实现编程接口和作曲接口演示示例:实现多个接口博学实训软件工程java面向对象抽象类和接口第17页串讲:面向对象设计标准面向对象设计标准摘取出代码中改变行为,形成接口多用组合,少用继承针对接口编程,不依赖于详细实现针对扩展开放,针对改变关闭先记忆,再应用,在应用中了解博学实训软件工程java面向对象抽象类和接口第18页答疑时间同学们请就以下方面问题请教老师《阶段练

温馨提示

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

评论

0/150

提交评论