首页 > 代码库 > 方法覆盖(方法重写)

方法覆盖(方法重写)

package com.qingfeng;
/**
 *
 * @author win7
 * 功能:方法覆盖(方法重写):子类的某个方法覆盖父类的某个方法
 */
public class Demo3_8 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Animal animal1 = new Animal();
        animal1.cry();
        Cat cat1 = new Cat();
        cat1.cry();
        Dog dog1 = new Dog();
        dog1.cry();
    }
}
class Animal{
    int age;
    String name;
    
    public void cry(){
        System.out.println("我是一个动物,我也不知道怎么叫!");
    }
}
class Dog extends Animal{
    public void cry(){
        System.out.println("我是一只狗,我会旺旺叫");
    }
}
class Cat extends Animal{
    public void cry(){
        System.out.println("我是一只猫,我会喵喵叫");
    }
}

方法覆盖:子类覆盖(或者重写)了父类的某个方法

解决的问题:子类可以根据需要对同一功能显示自身与众不同的行为(方法),调用者调用很方便,不用改变方法名,只需要改变对象即可!
注意事项:1.子类和父类的某个方法名称,返回类型,参数完全一样;

     2.子类方法不能缩小父类方法的访问权限

方法覆盖(方法重写)