什么是继承?
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的属性和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
继承有什么作用?
继承是面向对象语言的重要机制。借助继承,可以扩展原有的代码,应用到其他程序中,而不必重新编写这些代码,也就是代码可以复用。
public class 父类{
}
public class 子类 extends 父类{
}
Java不支持多继承,但是支持多重继承
继承的特性
1.子类拥有父类非private的成员属性、成员方法(不继承父类的构造方法)。
2.子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。
3.子类可以用自己的方式实现父类的方法。
4.Java 的继承是单继承,但是可以多重继承。
5.提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码独立性越差)。
方法的重写
在继承关系中,如果子类对从父类继承过来的方法进行改进,变成自己的方法,这种现象就称之为方法的重写或者方法的覆盖
方法的重载
在一个类中,多个方法的方法名相同,参数个数、参数类型或者参数的顺序不同。
重载与重写的区别
1.重写发生在父子类上,重载是在同一个类中。
2.重写的函数参数类型及个数一定一样,但是重载必须不一样
多态
继承的表现就是多态。一个父类可以有多个子类,而在子类里可以重写父类的方法,每个子类重写的代码又不同,自然表现的形式就不一样。如果用父类的变量去引用不同的子类对象,在调用相同的方法的时候得到的结果就和表现形式就不一样了,这就是多态。
super(超类):
用java术语来讲,被继承的类称为超类,继承的类称为子类。
Object类是Java中所有类的超类(父类)
所有类都默认继承自Obejct类
每个类都可以使用Object类的方法
final关键字
final修饰的类不能被继承
final修饰的方法不能被重写
final修饰的属性(变量)不能被改变–就是常量的定义方式