面向对象Part3

继承:

 

 

  Extends在英文中的翻译是拓展.

但是java允许多重继承. 一条线.单线.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

在JAVA中,除了Object类, 每个类都有一个直接父类.

Object类是最高类. 

 

override方法的覆盖(复写):

当父类中的某个方法不符合子类中的特征的时候,子类需要覆盖父类的方法重新编写.

子类方法覆盖父类方法,如果调用子类的方法,方法名和父类相同也会执行子类的方法,如果子类找不到调用的方法才会去父类中寻找,父类找不到再继续向上找直到找到为止.

方法的覆盖语法很简单. 方法名完全相同,只有方法的内容不同.方法名粘贴复制即可.

只有方法才有覆盖的概念,字段没有覆盖的概念.

子类的访问权限必须大于等于父类的访问权限.private不存在覆盖.  @override用来判断子类方法是否覆盖了父类的方法.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

super关键字:

需求:在子类方法中调用父类中被覆盖的方法. 

   使用super.方法

子类初始化的过程:

在创建子类对象之前会创建父类对象.创建子类对象会调用子类构造器,在调用子类构造器之前会调用父类构造器.而且是无参的父类构造器super()

如果父类构造器是被写出来的.且不是无参数构造器.那么就需要自己写super()初始化构造器.而不用系统默认的隐藏的无参数构造器.

并且super()要作为第一个语句.因为必须要先有爸爸再有儿子. 1

如果父类没有可以被子类访问的构造器,则不能存在子类.因为子类的创建要先有父类.

 因为name是类私有, 用getName进行暴露. 

因为如果在子类中加入name.age信息,那么就必须要降低父类中name.age的限制安全等级.降为protected甚至更低才可以在子类中调用. 这样不利于信息安全.

说我我们在父类中设置name和age然后通过GetName向外暴露.    这样做的同时就修改了父类的构造器,将父类的构造器设置了参数,相应的,我们就需要修改子类默认的super(),

将super()加上name,age参数    如果外界需要调用age和name通过getName就可以调用.    this.要看清是谁来调用  如果是在Animal中调用this.name = name.   那么this.name指的是Animal的成员变量

如果在Public void say里调用的this.color,  say是Fish的方法.那么this.color指的是类Fish的Color =  private String color.

static不能与this或者super共存.   static是类级别的,    this和super是对象级别的. \

----------------------------------------------------------------------------------------------------------------------------------

Object类和常用类:

 

转载于:https://www.cnblogs.com/dwj-ngu/p/6228829.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值