Java面向对象程序设计- 继承

阅读:39

Java三大特性,封装、继承、多态。这篇只讲解继承。

继承是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()方法。

读后有收获,请打赏。更多精彩内容,请关注微信公众号。有疑问请加QQ交流群:454792501

全部评论

发表评论
更多精彩内容,请关注微信公众号