继承、重载、重写_第1页
继承、重载、重写_第2页
继承、重载、重写_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、继承、重载、重写 重载的条件: 1.必须在同一个类中2.方法名必须相同3.参数列表不能相同。 重写的条件: 1. 在不同的类中 2. 发生方法重写的两个方法返回值,方法名,参数列表必须完全一致 3. 子类抛出的异常不能超过父类相应的方法抛出的异常 4. 子类方法的访问级别不能低于父类相应方法的访问级别(public,package,protected, private) 5.方法体不同 super()调用父类构造,super.只能调用父类的实例方法 this()调用该类的其他构造方法,this.调用类的属性,方法 如果父类有有参构造,子类必须定义构造方法 2011-04-12 09:28 ja

2、va类的继承,重载,重写 继承关键字extends 如public class person extends animal = super只能用在子类的定义中,而不能在main()函数中调用; super()作构造器时,若父类以及祖宗类是有参构造函数,则子类以及孙类必须super(参数),而且不能间断,且在子孙类的构造函数的第一行必须是super(参数); 以此继承关系为例: animal - person- student 实际上在类student的构造函数中,隐含存在了类person的构造函数和类animal的构造函数,而所有的构造函数也够隐含存在了类object的构造函数 super在子

3、类中可以调用父类的protected 和public的方法和属性,当然如果父子类在同一包(目录)中,super在子类的定义中还能调用父类default的属性 = 方法覆盖的条件:子类中的方法与父类中的方法方法名,参数,返回值类型均相同,而子类的访问权限要大于父类的访问权限 方法重载的条件:类中的方法(无论是新建的还是继承来的)方法名相同,但参数不同,就是重载 其他条件的重名问题一概报错 详见banana.java plant.java tree.java中的showinfo()方法 = 属性也有覆盖,而且是绝对的覆盖,只要属性名字,即使数据类型不同,或者权限不同,也会覆盖,很霸道的覆盖;虽然覆盖了,但它还有被覆盖的属性,只是不能直接访问而已,通过super访问或通过相关接口进行访问 详见banana.java和plant.java = public void speak();-speak public void speak(int i);-spaek_int public void

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论