八讲面向对象高级特性一.pptxVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第八讲面向对象高级特性一

丰泽教育java学院3G学院Final修饰符特性final修饰符:修饰属性方法类最终的*final修饰属性:常量(运算中值不变的数据)1final修饰的属性必须在创建对象前显式赋值(final属性没有默认初始值(要么在类中直接赋值要么通过构造方法赋值)*2final修饰的属性只能赋值一次(方便好调用可读性强)

final修饰方法:最终的方法final修饰的方法不能被子类重写final修饰类:最终的类final类不能被继承

丰泽教育java学院3G学院本讲主要内容及重难点抽象类与抽象方法掌握与理解接口掌握多态的优势和应用场合(难点)掌握使用父类作为方法形参实现多态(重点)

抽象类和抽象方法概述:在面向对象的程序设计语言中,类是有层次和继承关系的。子类总是比其超类更加具体。而程序员在程序开发过程中,很多时候需要构造一系列的类及其继承关系,这时候,通常会将类层次中共有的特性抽取出来,创建包含这些共有特性的抽象类,并由抽象类派生出更加具体、有更多实现的子类或后代类,形成一个完整的类的层次体系。1、抽象方法2、抽象类

抽象方法和抽象类抽象方法语法:[范围修饰符]abstract返回值类型方法名(参数列表);注意:1.抽象方法用abstract声明;2.只有方法声明,没有方法实现的方法。抽象类语法:[范围修饰符]abstractclass类名{……}注意:1.使用abstract声明2.包含抽象方法的类必须声明为抽象类

抽象类使用规则及其本质使用规则1.抽象类必须被继承,抽象方法必须被重写。2.抽象类中的抽象方法只需声明,无需实现;3.抽象类不能被实例化,抽象类不一定要包含抽象方法,而定义抽象方法的类必须是抽象类。4.抽象类包含的抽象方法必须在其子类中被实现,否则该子类也必须是抽象类。 5.抽象类可以有构造方法供子类实例化对象抽象类本质1.从类的组成上看其是抽象方法和非抽象方法的集合。2.从设计的角度来看,实际上抽象类定义了一套规范。

注意事项一:由于抽象类是要被继承的,所以abstract类不能被final来修饰。二:abstract不能与private,static,final并列修饰同一个方法。

生活中的接口用程序描述USB接口Interface

为什么使用接口只有抽象方法的抽象类?可以用接口来表示接口有比抽象类更好的特性:1.可以被多继承2.设计和实现完全分离3.更自然的使用多态4.更容易搭建程序框架5.更容易更换实现……用接口代替这样的抽象类,是因为:

接口的定义接口是java语言提供的一种重要功能,它的结构与抽象类非常相似。接口本身也具有数据成员与抽象方法,但它与抽象类有以下不同。(1)接口的数据成员都是静态的且必须初始化。(2)接口中的方法必须全部都声明为abstract的,也就是说,接口不能像抽象类一样有一般的方法,而必须全部是抽象方法,接口是一种特殊的抽象类。

什么是接口以及接口的格式接口声明的基本格式如下:publicinterface接口名extends接口列表{[静态常量声明;]默认为publicstaticfinal[抽象方法声明;]默认为publicabstract}修饰符:可选,用于指定接口的访问权限,可选值为public。如果省略则使用默认的访问权限。接口名:必选参数,用于指定接口的名称,接口名必须是合法的Java标识符。一般情况下,要求首字母大写。extends父接口名列表:可选参数,用于指定要定义的接口继承于哪个父接口。当使用extends关键字时,父接口名为必选参数。方法:接口中的方法只有定义而没有被实现。接口是抽象类的变体,是常量和抽象方法的集合,它关心的是方法的特征定义,而不是方法的具体实现。故在接口中,所有方法都是抽象的。即:接口=常量+抽象方法

使用接口和使用继承有什么不一样?类和继承:主要用于定义”相关类“,的共同行为,体现的是对象的”静态归属“,即对象看起来像什么?接口:主要用于定义”不相关类“的共同行为,因为通过继承无法定义不相关类的共同行为(人、狗都有跑的行为,而他们没有继承关系)。体现的是对abstract象的”动态能力“,即对象能做什么?

实现接口接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements,其基本格式如下:[修饰符]class类名[extends父类名][implements接口列表]{}修饰符:可选参数,用于指定类的访问权限,可选值为public、

文档评论(0)

+ 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档