Java学习笔记二十二:Java的方法重写
Java的方法重寫
?
?
一:什么是方法的重寫;
如果子類對繼承父類的方法不滿意,是可以重寫父類繼承的方法的,當調用方法時會優(yōu)先調用子類的方法。
語法規(guī)則
返回值類型、方法名、參數(shù)類型及個數(shù)都要與父類繼承的方法相同,才叫方法的重寫
?
方法重寫是指:子類中定義一個方法,并且這個方法的名字、返回值類型、參數(shù)個數(shù)和類型與從父類繼承的方法完全相同。
?
方法的重寫必須滿足以下要求(從方法的五要素來分析):
(1)要有繼承;
(2)方法名,參數(shù)列表要相同;
(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+"狗是可以吃東西的");//這里的子類描述了狗可以吃東西 }}?
主函數(shù)InitailClass類:
?
package com.test;public class InitailClass {public static void main(String[] args) {Dog d = new Dog();d.age = 10;d.eat();}}運行結果為:
?
三:方法重寫和方法重載的區(qū)別;
方法重載:就是在同一個類中,方法的名字相同,但參數(shù)個數(shù)、參數(shù)的類型或返回值類型不同!
方法重寫:它是指子類和父類的關系,子類重寫了父類的方法,但方法名、參數(shù)類型、參數(shù)個數(shù)必須相同!
轉載于:https://www.cnblogs.com/pureqh/p/9161629.html
總結
以上是生活随笔為你收集整理的Java学习笔记二十二:Java的方法重写的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos 杀死进程命令kill
- 下一篇: 古风生日祝福文案167个