- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 接口和包 8.1 抽象类和方法 8.2 接口 8.3 包 8.1 抽象类和方法 抽象类是供子类继承、却不能创建实例的类。 抽象类中声明只有方法头、没有方法体的抽象方法。抽象类用于描述抽象的概念,其中的抽象方法约定了多个子类共用的方法头,每个子类可以根据自身实际情况,给出抽象方法的具体实现。 抽象类的子类必须完成父类定义的每一个抽象方法,除非该子类也是抽象类。它的主要用途是用来描述概念性的内容,这样可以提高开发效率,更好地统一用户“接口”。 声明抽象方法 [权限修饰符] abstract 返回值类型 方法名(参数表); 例如,计算图形面积的抽象方法area()可采用如下的声明: public abstract area(); 声明抽象类 [权限修饰符] abstract class 类名 { 成员变量; abstract 方法名( ); //定义抽象方法 } 说明:抽象类中也可以定义非抽象方法。 Java实例——利用抽象类表示多类图书 定义抽象类 abstract class Book { int bookPage; //图书页码 float discount; //图书折扣 double price; //图书价格 public Book(int bookPage,float discount) { this.bookPage=bookPage; this.discount=discount; } abstract void show_kind(); //显示图书种类 abstract double getPrice(int bookPage,float discount); //计算价格 public void show_price() //显示价格 { System.out.println(This books price is +price); } } 将抽象类作为父类,分别定义各子类 class Science_book extends Book //定义科技书类 { public Science_book(int bookPage,float discount) { super(bookPage,discount); //引用父类的构造方法 } public void show_kind() //实现抽象方法 { System.out.println(The books kind is science); } public double getPrice(int bookPage,float discount) //实现抽象类方法 { return bookPage*0.1*discount; } } class Literature_book extends Book //定义文艺书类 { public Literature_book(int bookPage,float discount) { super(bookPage,discount); } public void show_kind() { System.out.println(The books kind is literature); } public double getPrice(int bookPage,float discount) { return bookPage*0.08*discount; } } class Teaching_book extends Book //定义教材类 { public Teaching_book(int bookPage,float discount) { super(bookPage,discount); } public void show_kind() { System.out.println(The boo
您可能关注的文档
- 新Java程序设计(第二版) 教学课件 杨学全 第2章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第3章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第4章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第6章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第8章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第9章.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第10章Java的多线程编程.ppt
- 新Java程序设计(第二版) 教学课件 杨学全 第11章.ppt
- 新Java程序设计案例教程 2 第1章 Java语言入门.ppt
- 新Java程序设计案例教程 2 第2章 Java语言编程基础知识.ppt
- 2023年黑龙江省哈尔滨市道里区新华街道招聘社区工作者真题及参考答案详解1套.docx
- 2023年黑龙江省大庆市肇州县永胜乡招聘社区工作者真题含答案详解.docx
- 2023年黑龙江省牡丹江市海林市新安朝鲜族镇招聘社区工作者真题及参考答案详解.docx
- 2023年黑龙江省哈尔滨市松北区万宝街道招聘社区工作者真题及答案详解1套.docx
- 2023年黑龙江省哈尔滨市道外区新乐街道招聘社区工作者真题含答案详解.docx
- 2023年黑龙江省绥化市北林区吉泰招聘社区工作者真题参考答案详解.docx
- 2023年黑龙江省哈尔滨市香坊区建筑街道招聘社区工作者真题附答案详解.docx
- 2023年黑龙江省哈尔滨市道外区民主乡招聘社区工作者真题附答案详解.docx
- 2023年黑龙江省牡丹江市海林市二道镇招聘社区工作者真题含答案详解.docx
- 2023年黑龙江省大庆市萨尔图区铁人街道招聘社区工作者真题及参考答案详解一套.docx
文档评论(0)