- 1、本文档共95页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 继承 继承的语法 [修饰符] class 子类名 extends 父类名 { 类体; } 例如:class Apple extends Fruit { … } 【注】Java只支持类单重继承,即只有一个父类的继承关系 要点 在继承中: 子类可以得到父类的属性和方法。 子类可以添加新的属性和方法。 子类可以重新定义父类的属性和方法。 (子类中的内容比父类丰富) 属性隐藏 子类可以定义与父类同名的属性,称为属性隐藏。即子类可以重新定义父类的属性。 调用属性的规则: 先在当前类中找,如果没有再到其父类中找。 如果想要调用被隐藏的父类属性,静态属性可以使用“类名.属性名”;非静态属性可以用“super.属性名” 用法见课后习题P156,10题 方法的覆盖 在子类中可以定义与父类方法头相同的方法,称为方法的覆盖。 也可以说,通过方法覆盖,子类可以重新定义父类的方法。 方法覆盖要注意: 子类在重新定义父类中的已有方法时,应保持和父类中该方法相同的方法头,即有完全相同的方法名、返回值类型和参数列表。 方法覆盖时,子类方法不能缩小父类方法的访问权限。比如:父类的方法如果是protected,子类方法只能是protected或者public 继承关系中的构造方法 在创建子类对象时,先调用父类构造方法,然后再调用子类构造方法 默认情况下,子类调用父类无参的构造方法 super 在子类中调用父类的属性和方法 super指当前类的父类对象,所以不能在静态方法中使用。 在子类构造方法中显示调用父类的构造方法。 必须写在子类构造方法的第一条。 总结:this 和super的用法 this代表当前类的对象;super代表当前类的父类对象。 this可以调用当前类当中的其他构造方法,而super可以在子类中调用其父类中的构造方法。 注意:this和super都不能用在static修饰的方法内;并且this和super不能同时使用,因为都需要放在第一条语句上。 Final使用要点 final可以修饰: 属性或局部变量,不能被修改(常量) 方法,不能被覆盖(最终方法) 类,不能被继承(最终类) abstract使用要点 abstract类 不能实例化,只能用于继承 abstract方法 只有方法头,没有方法体 只能定义在抽象类中 注意: 抽象类中可以有具体方法 抽象类中的抽象方法在其非抽象子类中必须实现(覆盖) 父子类对象的使用和转化 父子类的对象在某些情况下可以相互转化。 转化原则 子类对象可以当作父类对象使用 父类对象不能当作子类对象使用 如果父类引用实际指向的是子类对象,那么该父类引用可以通过强制转换成子类对象使用 说明 比如父类是:A,子类是:B B b= new B();//创建子类对象 A a= new B();//创建子类对象但把它定义成父类类型的,它就可以当成父类的对象来用 (类似于:double i=12,整型的12可以当成浮点数来用) if-else语句 if (布尔表达式) { 布尔表达式为真时执行的语句(组); } else { 布尔表达式为假时执行的语句(组); } switch语句 Java提供switch语句来有效的处理多重条件。 switch (表达式) { case 值1: 语句组1; break; case 值2: 语句组2; break; ……………… case 值N: 语句组N; break; defalut: 缺省语句组; } 注意:表达式结果类型: byte,short,int或者char while 循环 while循环的语法如下: while (循环条件) { // 循环体; } do循环 do循环是while循环的变体。 do { // Loop body; } while (循环条件); (注意最后的分号!) for 循环 for循环的语法如下: for (循环变量初始化;循环条件;调整语句) { //循环体; } for循环 如果循环条件省略,就意味着条件为真。 下述语句也是正确的 for(;;){} break和continue关键字 语句break和语句continue,可以用在循环语句中为循环提供附加控制。 break:立刻终止包含它的最内层循环。 continue:只结束当前迭代,将程序控制转移到循环的下一次迭代。 要求会封装方法 不要把所有的代码都写在main方法中,main方法一般都是进行调用方法的。 比如编写方法判断一个数是否是水仙花数。(考察大家编写实现某功能的方法,并在main方法中调用该方法) 第三章 面向对象思想 对象 对象的要素 对象
您可能关注的文档
最近下载
- 麦肯锡战略规划模板.pptx VIP
- 数码影音-SONY-MD-MZ-N510说明书.pdf
- 个人信用报告异议申请表(交通银行模板).docx
- 中文修订版儿童社会能力和行为评定量SCBE-30.docx
- 教科版科学三年级下册第一单元 物体的运动 大单元整体教学设计学历案教案附作业设计(基于新课标教学评一体化).docx
- 上海汽车集团股份有限公司资本结构优化研究.doc
- 2025湖州南浔农村银行招聘20人笔试模拟试题及答案解析.docx
- 人教新起点小学四年级英语下册同步练习试题(全册).doc
- 2020年南京艺术学院附属中学高中招生考试语文试卷.doc VIP
- 南阳理工中医专升本历年真题.pdf
文档评论(0)