Java7:继承

Java7:继承,第1张

Java7:继承 继承

继承最基本的作用就是:代码复用,避免写一些重复的代码。除此之外,继承也是之后函数覆盖、多态的基础。

注意:

Java只支持单继承,即:一个类只能继承一个类。
但支持嵌套继承。a类继承A类,则A类称为父类、superclass;a类称为子类、subclass构造函数不支持继承,其余内容都支持继承。其中,private内容不支持直接访问,但子类中仍含有这些内容,可以通过实例函数间接访问。若一个类没有被程序员指定继承某个类,则该类默认继承JavaSE库中提供的java.lang.Object类所有类中都默认存在Object类的信息

语法:子类 extends 父类

class A {
    private int n;
    
    void setN (int n) {
        this.n = n;
    }
    int getN () {
        return n;
    }
}

class test extends A {
    public static void main(String[] args) {
        test t = new test();
        t.setN(100);
        System.out.println(t.getN());
    }
}
函数覆盖(重写

方法重写(override)发生在具有继承关系的两个类之间。
当父类中的函数已经无法满足子类的具体需求的时候,需要对从父类中继承的函数进行修改(重写)。
重写的函数名、返回值类型、形参列表都一致;子类中该函数的访问权限不低于父类中该函数的访问权限(private < protected < public);子类的抛出异常没有更多。
如此,子类调用函数时,会优先调用子类中的函数。

class Animal {
    void move() {
        System.out.println("动物在移动");
    }
}

class Cat extends Animal {
    void move() {  //与父类中的函数名、返回值类型、形参列表都一致
        System.out.println("小猫在走猫步");
    }

    public static void main(String[] args) {
        Cat t = new Cat();
        t.move(); //小猫在走猫步
    }
}

注意:private函数、构造函数不能继承,因此不能重写;静态函数也不存在重写。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5706958.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存