Rumah >Java >JavaAsas >java什么是重写

java什么是重写

angryTom
angryTomasal
2019-11-12 16:54:016077semak imbas

java什么是重写

java什么是重写

Java程序中类的继承特性可以产生一个子类,子类继承父类就拥有了父类的非私有的属性(方法和变量),在子类中可以增加自己的属性(方法和变量),同时也可以对父类中的方法进行扩展,以增强自己的功能,这样就称之为重写,也称为复写或者覆盖

所谓方法重写就是子类的方法和父类中继承。(推荐教程:java教程

下来的方法具有完全相同的方法名、返回值类型、方法的参数个数以及参数类型,这样才能被称为方法重写。

// 这是父类的定义
public class Person {
    public void eat() {
        System.out.println("=====这是父类Person的eat方法=======");
    }
}
// 这是子类的定义
public class Student extends Person {
    @Override
    public void eat() {
        System.out.println("===这是子类Student的eat方法===");
    }
    // main方法测试
    public static void main(String[] args) {
        Student student = new Student();
        student.eat(); //输出:===这是子类Student的eat方法===
    }
}

子类重写父类的方法后,在实例化子类的时候则调用的是子类中的方法,父类的方法就如同被覆盖了一样。如果在子类中需要调用父类的方法,则在子类方法中使用super关键字调用父类的方法,格式:super.父类中的方法名。

方法重写特点

在子类和父类中,出现了方法声明相同的情况

子类的方法声明要和父类相同

子类要重写的方法,方法的权限修饰符不能比父类更低(public 、protected  、default  、private 权限依次增加)

父类私有的方法,子类不能进行方法重写

Atas ialah kandungan terperinci java什么是重写. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:java中关于缓存概念的理解Artikel seterusnya:java中的反射如何理解