* @笔记
* 方法覆盖
* 一、例题
* 建立一个动物类。动物有一个方法,并且子类也有相同的方法。
* 二、概念
* 子类的一个方法和父类的一个方法的名称,返回类型,参数完全一样,那么我们称子类的这个方法覆盖了父类的那个方法。
* 三、注意事项
* 1.子类的方法的返回类型,方法名称,参数要和父类完全一样,否则编译出错。
* 方法覆盖
* 一、例题
* 建立一个动物类。动物有一个方法,并且子类也有相同的方法。
* 二、概念
* 子类的一个方法和父类的一个方法的名称,返回类型,参数完全一样,那么我们称子类的这个方法覆盖了父类的那个方法。
* 三、注意事项
* 1.子类的方法的返回类型,方法名称,参数要和父类完全一样,否则编译出错。
* 2.子类方法不能缩小父类方法的访问权限。(重要)
package com.shuiyixin;
public class learnJ_5fugai {
/*
* @作者:shuiyixin
* @日期:2018.01.31
* @内容:覆盖
*
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
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 Cat extends Animal{
//子类的方法的返回类型,方法名称,参数要和父类完全一样
//protected void cry(){//cry方法覆盖,错误,因为cry方法的修饰符使得子类的方法访问权限变小
public void cry(){//cry方法覆盖
System.out.println("喵喵叫。");
}
};
class Dog extends Animal{
//子类的方法的返回类型,方法名称,参数要和父类完全一样
public void cry(){//cry方法覆盖
System.out.println("汪汪叫。");
}
};