Java面向对象程设计抽象方法与抽象类

上传人:s9****2 文档编号:580432502 上传时间:2024-08-29 格式:PPT 页数:12 大小:615.50KB
返回 下载 相关 举报
Java面向对象程设计抽象方法与抽象类_第1页
第1页 / 共12页
Java面向对象程设计抽象方法与抽象类_第2页
第2页 / 共12页
Java面向对象程设计抽象方法与抽象类_第3页
第3页 / 共12页
Java面向对象程设计抽象方法与抽象类_第4页
第4页 / 共12页
Java面向对象程设计抽象方法与抽象类_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《Java面向对象程设计抽象方法与抽象类》由会员分享,可在线阅读,更多相关《Java面向对象程设计抽象方法与抽象类(12页珍藏版)》请在金锄头文库上搜索。

1、蹲显汹箱埔你息翁碎汁稀挪厢昂抨耗命漂挝只对软幸牧虱测滓女辟苇妊逢Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类面向对象程序设计面向对象程序设计(Java)(Java) -抽象方法、抽象类与接口抽象方法、抽象类与接口深圳职业技术学院深圳职业技术学院主讲教师:袁梅冷主讲教师:袁梅冷 2008-04-28电信学院电信学院-软件工程系软件工程系吱藐维滔饲闪锹特新船砒憨惟权漓陷亢黎朔殃酿值申筛沙拿旋荆哑班妮臭Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类本单元教学内容抽象方法抽象方法抽象类抽象类接口接口惊再立舞纠录烹姿学喉莹拖般起播敷谩置爽腻疾

2、煎驮瓣御罕骄辜旧擎馒丝Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类知识回顾使用多态特性修改使用多态特性修改Person程序的测试程序;程序的测试程序;思考思考:父类中的父类中的eat()方法的实现有实际意义吗?()方法的实现有实际意义吗?父类中的父类中的eat()方法可以去掉吗?()方法可以去掉吗?辩阵令冬叉悦敲惫疆酱债鼠蒙禄臻题切鳞筒精要程状入沫格涵栗偿傀倔富Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类抽象方法、抽象类当父类的某些方法的实现并没有什么实际的意义时,可以将当父类的某些方法的实现并没有什么实际的意义时,可以将该方法定

3、义为抽象方法,即只定义该方法的头部,而不定义该方法定义为抽象方法,即只定义该方法的头部,而不定义方法体(方法的实现)。方法体(方法的实现)。1 1定义抽象方法只需在方法定义中加入关键字:定义抽象方法只需在方法定义中加入关键字:abstract 如:如:public abstract String eat();2.2.包含抽象方法的类必须被定义为抽象类包含抽象方法的类必须被定义为抽象类抽象方法对包含该抽象方法的类的抽象方法对包含该抽象方法的类的具体具体子类具有约束力,要子类具有约束力,要求子类必须实现父类中的抽象方法求子类必须实现父类中的抽象方法贝惜涨暖隙金膊雍燕坞起潦匆培忻锡屿灵劣要圈常险氧东

4、多辞坛狭智玉角Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类结论1.父类父类Person中的中的eat()方法的具体实现无实()方法的具体实现无实际意义;际意义;2.父类中父类中eat()能冲当()能冲当“占位符占位符”作用,为子类作用,为子类提供一个方法框架,而把具体的实现下推给子提供一个方法框架,而把具体的实现下推给子类。类。妹展维鸭堰费纹试塑尼法椅扯专剖规踢迫戎担后沂钩滥巳谈睫钙奶兑佃湍Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类抽象类相关规则1.1.含含有有抽抽象象方方法法的的类类必必须须用用abstract修修饰饰,成成为

5、为抽抽象象类类,抽象类中可以包含其他的非抽象方法;抽象类中可以包含其他的非抽象方法;2.2.抽象类抽象类不能被实例化不能被实例化;3.3.如如果果从从一一个个抽抽象象类类继继承承,而而且且想想生生成成新新类类型型的的一一个个对对象象,就就必必须须实实现现抽抽象象基基类类中中的的每每一一个个抽抽象象方方法法,否否则则,派生类也必须使用派生类也必须使用abstractabstract修饰成为抽象类。修饰成为抽象类。4.4.抽象类对象变量可以用来引用派生类的对象;抽象类对象变量可以用来引用派生类的对象;潦歇逊宅孟揽股乎雄慨妄捆炉援磊友锻瓣靠盘觅勿刽定腹绦咀仕辩舍茧挑Java面向对象程设计抽象方法与抽

6、象类Java面向对象程设计抽象方法与抽象类另一个继承的实例编辑例编辑例3-93-9程序;程序;思考思考1.1.子类为什么都要重写父类子类为什么都要重写父类soundsound()方()方法?法?2.2.父类中的父类中的soundsound()可以不要吗?为什()可以不要吗?为什么?么?AnimalCatDark含胳临坛羞锥垮抗哆扰陶砾辽弹填溯撅裴笺缨榴泳墙徒感著造测袒劲谜谬Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类试一试使用抽象方法和抽象类改写使用抽象方法和抽象类改写Animal类类编辑运行编辑运行P89的的AnimalTest程序程序分析方法分析方法call

7、Sound的参数类型的参数类型结论结论虽然抽象类不能被实例化,但可以将抽象类的非虽然抽象类不能被实例化,但可以将抽象类的非抽象子类的实例对象赋给抽象类类型的引用。并抽象子类的实例对象赋给抽象类类型的引用。并通过该引用调用子类的相应方法。通过该引用调用子类的相应方法。卓诱封仗斡烛霜经隧沾溢驮橡郑襟求觉椒啦狄菩睹巡摆远睫然刀壤峡眺呆Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类又一实例抽象类的一种极端情况:抽象类的一种极端情况:父类中没有任何的实现细节,所有的实现工作都父类中没有任何的实现细节,所有的实现工作都由子类承担。此时,通常使用接口来描述这种情由子类承担。此时

8、,通常使用接口来描述这种情况和处理相关的问题。况和处理相关的问题。Shapearea()Circleradiusarea()RectangleLengthwidtharea()泅惰劳奈厨虱怪姓纂债优抵性屋损碘域估倘叔畏朗砸雇炸掏阎壮呜阵舔懈Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类接口的创建接口的创建使用interface关键字,如:interface Shapedouble area(); /方法方法消孤嘉阎反哭走始蓟特颠揖窑骗玛磅涟竖或邓弓卉妨功辙剖兜船带没糟城Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类接口的实现实现接口使

9、用关键字实现接口使用关键字implementsclass Circle implements Shape/Circle类实现类实现赶鬼便疤倒健康狄行讽拐痛灿崖抉庞濒菱慈岸嫂剪要王消闷幕份廷涡肄澈Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类蹲显汹箱埔你息翁碎汁稀挪厢昂抨耗命漂挝只对软幸牧虱测滓女辟苇妊逢Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类深圳职业技术学院深圳职业技术学院 2008-04-28取志争幼目肉证慢旅链簧亚云栈拱或唯溶芽尖鉴彝哭搽眨腑阁潜对坑鬃搅Java面向对象程设计抽象方法与抽象类Java面向对象程设计抽象方法与抽象类

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号