第4章_面向对象的高级编程.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1/NUMPAGES1

第4章_面向对象的高级编程

第4章面向对象的高级编程面向对象方法的三个特性中,首先是封装性。

前面介绍过的类和对象,体现了面向对象程序设计语言的封装性。

本节中将介绍另外两大特性:

继承性和多态性。

继承性反映了类之间的层次关系。

一个类可以继承另一个类的所有成员变量和成员方法,该类还可以增加属于自己的成员。

被继承的类称为父类,继承后生成的新类称为子类。

父类和子类之间是继承关系,也称扩展。

继承这一特性可以大大提高代码的重用性,同时又对程序的删改和增添提供了方便,大大提高了程序的可扩展性和可维护性。

Java语言仅支持单继承,即每个子类只允许有一个父类,但一个类可以有多个子类。

对于某些需要多继承的情况,Java语言中将通过接口方式处理。

核心内容:

1.继承2.多态3.接口4.枚举5.Java常用类4.1继承4.1.1继承的基本概念1、创建子类在Java语言中,用extends关键字来表示一个类继承了另一个类。

其基本格式如下:

classlt;子类名gt;extendslt;父类名gt;{lt;子类体gt;}其中,extends是用于指出该类的父类。

如果在类的定义中没有extends子句,则表示该类的父类为java.lang.Object类。

Object类在后面会作更详细介绍。

classA{}classBextendsA{}上面代码中,类B继承了类A。

类B是类A的直接子类,而类A是类B的直接父类。

类A的直接父类是Object类,在Java语言中,所有类都是Object类的子类。

子类继承了父类,那么子类到继承了父类的哪些东西呢?简单地说:

子类继承了父类的一切(成员变量和成员方法),但这并不意味着在子类中可以访问父类的所有成员和方法,这受到访问控制修饰符的控制。

?当子类和父类位于同一个包中:

子类中可以使用父类中public、默认访问控制和protected访问级别的成员变量和成员方法。

?当子类和父类位于不同的包中:

子类中可以使用父类中public和protected访问级别的成员变量和成员方法。

【例4-1】分析下列程序,注意子类对父类的继承。

//文件名:

Demo.javaclassA{publicintx=10;inty=9;protectedintz=8;privateintw=7;voidprint(){System.out.println(quot;InClassAquot;);}intsum(){returnx+y+z+w;}}classBextendsA{intb1=10;inttotal(){returnx+y+z+b1;}}publicclassDemo{publicstaticvoidmain(String[]args){Aa=newA();...

文档评论(0)

134****7975 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档