目录
重写(override)
下面直接给出代码实例,简单易于理解
public class Cat extends Animal {
@Override
public void eat() {
System.out.println("小猫吃鱼");
}
}
public class Dog extends Animal {
@Override
public void eat() {
System.out.println("小狗吃骨头");
}
}
public class Animal {
public void eat() {
System.out.println("吃东西");
}
}
public class Test {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat();
Cat cat = new Cat();
cat.eat();
}
}
--------------------------------------------------
小狗吃骨头
小猫吃鱼
重写特点(一同两小一大)
-
重写发生在子类和父类之间
-
方法名相同,形参也要相同
-
子类的返回类型和父类一致或者比他小
-
子类抛出的异常必须和父类一致或者比他小(建议)
-
子类的访问权限比父类的访问权限更大或相等
重载(overload)
就是在同一个类中,方法名相同,形参不同
public class Student{
public void write(int m){
}
public void write(String str){
}
}
重写与重载区别
重载与重写本身一点关系都没有
-
方法重载:overload
重载:解决了同一个类中,相同方法名不同的问题(两同一不同)
-
方法重写:override
重写:解决了子类继承父类,父类方法满足不了子类方法的要求,需要在子类中重写该方法(一同两小一大)
创作不易,如有帮助请点个赞吧!
版权声明:本文为weixin_51764558原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。