Java学习笔记二十二:Java的方法重写

2018-06-18 00:15:26来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

Java的方法重写

 

 

一:什么是方法的重写;

  如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法。

语法规则

  返回值类型、方法名、参数类型及个数都要与父类继承的方法相同,才叫方法的重写

 

方法重写是指:子类中定义一个方法,并且这个方法的名字、返回值类型、参数个数和类型与从父类继承的方法完全相同。

 

方法的重写必须满足以下要求(从方法的五要素来分析):
(1)要有继承;
(2)方法名,参数列表要相同;
(3)访问修饰符不能比父类窄;
也就是说,父类的public方法在重写时,访问修饰符必须是public,因为public的范围最大,否则就不构成方法的重写,例如:对于父类protected的方法,在重写时可以用protected或public来修饰。
(4)抛出的异常不能比父类更宽泛;
(5)返回类型要比父类的小或相同。
只有满足以上五个要求才符合方法的重写

 

二:举一个例子;

Animal类:

 

package com.test;

public class Animal {
    public int age;
    public void eat(){
        System.out.println("年龄"+age+"动物是可以吃东西的");
        //这里的父类只是描述动物可以吃东西
    }

}

 

Dog类:

 

package com.test;

public class Dog extends Animal{

}

 

如果我们对父类的eat方法不满意,就可以重写eat方法

Dog类:

 

package com.test;

public class Dog extends Animal{
    public void eat(){
        System.out.println("年龄"+age+"狗是可以吃东西的");
        //这里的子类描述了狗可以吃东西
    }

}

 

主函数InitailClass类:

 

package com.test;

public class InitailClass {

    public static void main(String[] args) {
        
        Dog d = new Dog();
        d.age = 10;
        d.eat();

    }

}

运行结果为:

 

三:方法重写和方法重载的区别;

  方法重载:就是在同一个类中,方法的名字相同,但参数个数、参数的类型或返回值类型不同!
  方法重写:它是指子类和父类的关系,子类重写了父类的方法,但方法名、参数类型、参数个数必须相同!

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java开源生鲜电商平台-技术方案与文档下载(源码可下载)

下一篇:Spring Bean注册解析(一)