#继承:
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
自己理解说继承
老样子举例子,首先我们需要一个父类
例:一个动物类,有名字和id,能吃饭能睡觉
然后再说子类
例:老虎和兔子都可以吃饭睡觉,都有名字id,可以继承动物类
public class Animal {
private String name;
private int id;
public Animal(String myName, int myid) {
name = myName;
id = myid;
}
public void eat(){
System.out.println(name+"正在吃");
}
public void sleep(){
System.out.println(name+"正在睡");
}
public void introduction() {
System.out.println("大家好!我是" + id + "号" + name + ".");
}
}
老虎兔子类:
public class Tiget extends Animal {
public Tiget (String myName, int myid) {
super(myName, myid);
}
}
public class Rabbit extends Animal {
public Rabbit (String myName, int myid) {
super(myName, myid);
}
}
##注意事项
JAVA支持多重继承 不支持多继承
一个类只能有一个父类
##继承的特性
1 子类拥有父类非private的方法和属性
2 子类可以有自己的属性和方法,即子类可以对父类扩展
3 子类可以用自己的方式实现父类的方法
4 Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 A 类继承 B 类,B 类继承 C 类,所以按照关系就是 C 类是 B 类的父类,B 类是 A 类的父类,这是 Java 继承区别于 C++ 继承的一个特性。
5 提高了类的耦合性
继承的关键字
extends和implements
super关键字:我们可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类。
this关键字:指向自己的引用。
final关键字:可以将类定义为无法继承的,即最终类,或者修饰方法,该方法不能被子类重写
子类是不能继承父类的构造器的,他只是显示或者隐式的去调用,如果父类的构造器中有参数,则子类必须显示的捅过super关键字调用父类的构造器并给与参数
super()是调用父类的无参构造方法,只能在子类构造方法的第一行。