Java面向对象程序设计- 继承
阅读:453Java三大特性,封装、继承、多态。这篇只讲解继承。
继承是Java三大特性中之一,继承可以很好的复用代码。Java只支持单继承,也就子类只能有一个父类。
1.继承相关概念
现实中,儿子可以继承父亲的财产,那么儿子在Java中就是子类,父亲就是父类,且儿子只能有一个父亲。
通过extends关键字完成继承。
修饰符 class SubClass extends SuperClass
{
//类实现部分
}
子类SubClass会继承所有父类SuperClass全部成员变量和方法,这样就可以复用父类的变量和方法了。
但是,父类的构造器子类不能继承。
比如,如下代码:
父类Animal:
public class Animal {
public String name = "可爱的动物";
public void eat(){
System.out.println("Animal eat ...");
}
public void run(){
System.out.println("Animal run ...");
}
}
子类Dog:
public class Dog extends Animal {
public static void main(String[] args){
Dog dog = new Dog();
System.out.println(dog.name);
dog.eat();
dog.run();
}
}
运行子类,结果如下:
可爱的动物
Animal eat ... Animal run ...
Dog继承了父类Animal成员变量name和方法eat、run。
2.Object是所有类的超类
虽然Java只能单继承,但是子类继承父类,父类可以作为子类继续继承,这样就间接继承了多个父类。
比如显示中,儿子继承父类的财产,父亲继承爷爷的财产,可以一直往上延伸下去。
在Java中,java.lang.Object是所有的类的父类,默认继承Object类,因此Object的成员变量和方法我们都可以直接使用。
比如常用的equals()、hashCode()、getClass()、toString()方法。
赞赏支持
