Java面向对象笔记(十一)重写、覆盖

    xiaoxiao2021-04-17  32

    一、概念

    当子类出现和父类一模一样的函数时,当子类对象调用该函数时会执行子类的函数,这叫做重写(覆盖)。

    二、应用

    当子类具备和父类相同的功能,而功能的内容不同时,这时没必要定义新的功能了,可以直接重写(覆盖)即可。

    三、注意

    ①子类覆盖父类,必须保证子类权限大于等于父类权限,才可以覆盖。

    ②静态只能覆盖静态。

    ③重载:只看同名函数的参数列表

    重写:子父类方法要一模一样(方法返回值类型,方法名,参数列表相同,权限修饰符可以不同,但是必须保证第①条)

    四、案例

    //定义一个Animal类描述动物的共性 class Animal { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } public void eat(){ System.out.println("动物吃饭...."); } protected void sound(){ System.out.println("动物的声音...."); } } //Cat类继承Animal类 class Cat extends Animal { public void eat(){ //重写父类eat()方法 System.out.println("猫吃鱼"); } public void sound(){ //重写父类sound()方法 System.out.println("喵喵喵"); } public void showCat(){ System.out.println("I am a cat"); } }

    转载请注明原文地址: https://ju.6miu.com/read-673426.html

    最新回复(0)