- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象设计 类的继承 为什么要使用继承? 通过继承可以简化类的定义 实现继承的方式 class 子类 extends 父类 继承的规定 Java只支持单继承,不允许多继承 即: 继承的规定 可以有多层继承 即: 继承的规定 子类继承父类所有的公有成员和公有方法,但不继承父类的构造方法 子类对象实例化的过程 子类对象在实例化时,默认调用父类中无参构造函数 函数的复写 class A { public void fun1(){} } class B extends A { public void fun1(){} } fun1被其子类复写了 调用父类中的方法 调用父类中的特定构造函数 super() 调用父类中被覆盖的方法 super.方法() 练习题 请试着逐步完成下列的程序设计: (a)、试设计一个父类Caaa,内含两个public整数数据num1与num2。 (b)、设计一个子类Cbbb,继承自Caaa类,并加入set_num()方法,可用来赋值从父类继承而来的成员num1与num2,再设计一show()方法,用来显示num1与num2的值。 练习题 请参考上题的程序代码,并逐步完成下面的程序设计 (1)、试在Caaa类里加入一个没有参数的构造函数Caaa(),它可用来把num1和num2赋值初值为1。 (2)、试在Caaa类里加入另一个有参数的构造函数Caaa(int a,int b),它可用来把num1赋值为a,把num2赋值为b。 (3)、在main()方法里编写程序代码,测试(1)与(2)的结果。 方法的覆盖 覆盖方法必须和被覆盖方法具有相同的方法名称、参数列表和返回值类型 可以在子类中用super.方法()的方式调用父类中的方法 覆盖方法时,不能使用比父类中被覆盖的方法更严格的访问权限 Object 类 public class Person extends Object equals()方法 toString()方法 抽象类 什么叫抽象类? 抽象类中包括: 已经定义好的方法 如:public void fun(){} 未定义方法的方法名 如:abstract public void fun(); 抽象类的定义 抽象类必须用abstract关键字来修饰; 如:abstract class 类名{} 抽象方法也必须用abstract来修饰 如:abstract public 返回类型 方法名(); 抽象类的使用规则 抽象类不能被实例化,也就是不能用new关键字去产生对象 抽象方法只需声明,而不需实现 含有抽象方法的类必须被声明为抽象类,抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则这个子类还是个抽象类 final关键字 在Java中声明类、变量和方法时,可使用关键字final来修饰。 final标记的类不能被继承 final标记的方法不能被子类重写 final标记的变量(成员变量或局部变量)即成为常量,只能赋值一次 全局常量:public static final 接口(interface) 接口:抽象方法和常量的集合 接口的定义: interface { 数据类型 变量名 = 值; 返回值类型 方法名([参数]); } 练习题 下面的程序代码是一个简单数学四则运算的范例。我们在抽象类Math里已定义好一个show()以及4个abstract 方法。请在Compute类里编写add()、sub()、mul()与div()这4个方法的定义,使得我们可以利用Compute类来做两个整数的四则运算。 接口 接口中包括 常量 抽象方法 接口的使用规则 在接口定义中,如果没有加final或abstract则默认加上。 例: int i = 30 ; //相当于final int i = 30 ; public void printX(); //相当于abstract public void printX(); 接口的使用规则 一个新的接口用extends关键字去继承一个已有的接口,实现接口的多继承 例:interface 接口A extends 接口1,接口2{} 接口的使用规则 可以定义一个类用implements关键字去实现一个接口中的所有方法 class 类名 implements 接口 {} 接口的使用规则 一个类可以实现多个接口 class 类名 implemets 接口A,接口B{} 接口的使用规则 extends关键字必须位于implements关键字之前 例: class 子类 extends 父类 implements 接口 接口的继承 子接口 extends 父接口 例如: interface A{} interface B extend
您可能关注的文档
最近下载
- 2024版房屋抵押贷款合同范本.docx VIP
- 基于反作用飞轮和磁力矩器的卫星姿态控制系统分析-analysis of satellite attitude control system based on reaction flywheel and magnetic torque device.docx VIP
- 地贫筛查中的血红蛋白电泳.pptx VIP
- 光电开关HPX-AG系列使用说明书.PDF VIP
- 精神科患者风险的管理.pptx VIP
- 保护女职工权益知识竞赛题库50题(答案).docx VIP
- 盖板涵施工监理细则.pdf VIP
- 迅达3300调试汇总.doc VIP
- (高清版)B-T 19843-2022 工业通风机 射流风机性能试验.pdf VIP
- 冰美人淘宝直播数据复盘.xlsx VIP
文档评论(0)