继承总结(Java)

一、什么是继承
Java中,将行为和属性都相同的一类抽象出来成为一个父类,其他子类可以通过extends关键字来继承该类,从而获得父类的属性和方法。
父类:

public class Father {
  public String name;
  public int age;
  public String sex;
  public void eat(String food){}
}

子类:

public class Son extends Father{
}

子类对象可以继承父类非私有的方法和非私有的成员变量。
此时Son类对象一经创建就可以拥有name,age,sex属性和eat()方法。

注意事项:
1.Java中只支持单继承(一个儿子只能有一个父亲)
2.Java支持多重继承 如:A extends B, B extends C…
3.Java中所有的类都继承Object类。

二、this与super关键字

1.this表示当前对象。
2.super表示当前对象的父类对象。

this.name:表示当前对象的name属性。
super.name表示当前对象的父类对象的name属性。

三、创建子类对象时的注意点
1.在创建子类对象时如:

Son son = new Son();

此时JVM会 1:加载运行此类的静态代码块,以及初始化静态成员变量。
2:进入main()方法。
3:执行Son son = new Son();
4.加载父类的静态代码块,静态成员变量。
5.加载子类的静态代码块,静态成员变量。
6.执行父类的构造代码块以及成员变量。
7.执行父类构造器。
8.执行子类的构造代码块以及成员变量。
9.执行子类构造器。

意思就是,想创建一个子类对象,得先走一遍父类对象创建过程但是却不创建父类对象。
这样,子类就获得了父类的所有成员变量以及方法。

注意事项:
1.子类创建对象时,会默认调用父类的构造方法如:super();
此段代码必须放在子类构造器的第一行,若不写,则系统默认写上。
2.如果父类中没有无参构造,则必须在子类的构造器中写上父类的有参构造器。如:super(xxx);

三、方法的重写以及成员变量的隐藏。
1.方法的重写:
子类将父类的方法按照自己的需求重写
规则:1.返回值相同或比父类小。
2.方法名称相同。
3.方法参数列表相同。
4.修饰权限符大于等于父类中该方法。
此时用子类调用重写的方法时,就会调用自己的方法了,而不会去访问父类方法。

2.成员变量的隐藏:
子类重写了一个成员变量,与父类的成员变量名称相同。
此时,父类的成员变量没有被覆盖而是被隐藏了,还是可以通过super关键调用。

四、当父类中的方法用static变量修饰后
子类的同名方法必须也用static修饰。且不构成重写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值