JAVA覆蓋和重寫的區(qū)別及說明
JAVA覆蓋和重寫的區(qū)別
經(jīng)常聽到兩種話
- 1.覆蓋=重寫。
- 2.靜態(tài)方法可以覆蓋但不能重寫嗎,這兩句話聽起來挺矛盾的是不是
廢話不多說直接上圖:
package com.wangshili;
public class Main {
public static void main(String[] args) {
Father f =new Child();//創(chuàng)建子類對象,父類引用
f.print();//調(diào)用父類方法
((Child)f).print();//向下轉(zhuǎn)型,調(diào)用子類方法
while(true);
}
}
/*
* 重寫有多態(tài),調(diào)用方法時看對象
*/
class Father{
public void print(){
System.out.println ("這是父類");
}
}
class Child extends Father{
public void print(){
System.out.println ("這是子類");
}
}
package com.wangshili;
public class Test {
public static void main(String[] args) {
Father f =new Child();//創(chuàng)建子類對象,父類引用
f.print();//調(diào)用父類方法
((Child)f).print();//向下轉(zhuǎn)型,調(diào)用子類方法
while(true);
}
}
/*
* 覆蓋沒多態(tài),調(diào)用方法時看引用類型(靜態(tài)屬于類)
*/
class Father{
public static void print(){
System.out.println ("這是父類");
}
}
class Child extends Father{
public static void print(){
System.out.println ("這是子類");
}
}
認(rèn)真讀完上面兩份代碼
你應(yīng)該能發(fā)現(xiàn)區(qū)別了,我總結(jié)下:
1.非靜態(tài)方法,覆蓋=重寫,有多態(tài)
2.靜態(tài)方法,是不能重寫的,比如你添加@overwrite直接就報錯了,我們知道靜態(tài)屬于類,通過類名就可以直接調(diào)用該方法,所以這里也是一樣,只看引用類型,跟創(chuàng)建對象類型無關(guān)。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot整合RocketMQ實現(xiàn)消息發(fā)送和接收的詳細(xì)步驟
這篇文章主要介紹了SpringBoot整合RocketMQ實現(xiàn)消息發(fā)送和接收功能,我們使用主流的SpringBoot框架整合RocketMQ來講解,使用方便快捷,本文分步驟給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-08-08
Java 8對LinkedList元素進(jìn)行排序的方法詳解
在Java中,LinkedList是一種基于鏈表的數(shù)據(jù)結(jié)構(gòu),與ArrayList相比,它在進(jìn)行插入和刪除操作時表現(xiàn)出更好的性能,然而,LinkedList的元素排序也是開發(fā)中常見的需求之一,本文介紹了Java8對LinkedList元素進(jìn)行排序的方法,需要的朋友可以參考下2024-11-11
玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié))
這篇文章主要介紹了玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
關(guān)于Spring中Bean的創(chuàng)建進(jìn)行更多方面的控制
今天小編就為大家分享一篇關(guān)于關(guān)于Spring中Bean的創(chuàng)建進(jìn)行更多方面的控制,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01
idea配置全局變量Jdk、maven倉庫以及maven詳解(全文圖解)
這篇文章主要給大家介紹了關(guān)于idea配置全局變量Jdk、maven倉庫以及maven的相關(guān)資料,在配置JDK和Maven之前,需要確保已經(jīng)正確安裝了JDK和Maven,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01
Spring實現(xiàn)類私有方法的幾個問題(親測通用解決方案)
現(xiàn)實的業(yè)務(wù)場景中,可能需要對Spring的實現(xiàn)類的私有方法進(jìn)行測試。本文給大家分享Spring實現(xiàn)類私有方法面臨的幾個問題及解決方案,感興趣的朋友跟隨小編一起看看吧2021-06-06

