日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java抽象和接口的理解_Java接口实现与抽象类的区别理解 | 彬菌

發(fā)布時間:2025/3/21 java 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java抽象和接口的理解_Java接口实现与抽象类的区别理解 | 彬菌 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

版權(quán)聲明:轉(zhuǎn)載原創(chuàng)文章請以超鏈接形式請注明原文章出處,尊重作者,尊重原創(chuàng)!

恰飯廣告

接口:接口是抽象方法的集合。接口通常以interface來聲明。

接口注意事項:

1、嚴格來說,接口是用來實現(xiàn)(implements),而不是繼承(extends)。

2、接口對象不能直接使用關(guān)鍵字new進行實例化,可以利用子類對象的向上轉(zhuǎn)型進行實例化。

3、接口必須要有子類,子類可以實現(xiàn)(implements)多個接口,而且一個接口也能繼承另一個接口。

4、接口的成員只能是常量,不能是變量。如String name;(變量)。String name=bing;(常量)。

5、接口的成員和方法一般都是對外開放的(public) ,【private 、protected 、abstract】不能去修飾接口的常量。【protected、private、static、final】不能去修飾接口的方法。

6、定義接口方法和常量的時候就算沒有寫上public,那么最終的訪問權(quán)限也是public,而不是default。

7、為了節(jié)省打字時間,接口的方法默認都是public abstract修飾。

接口的示例代碼:

public interface OneInterface {? //接口1

public static final String oneName = "小明";//全局常量

public abstract void msgOne();//公共抽象方法,無return

}

interface TwoInterface{? //接口2

public static final String twoName = "小紅";//全局常量

public abstract String msgTwo();//公共抽象方法,有return

}

要去實現(xiàn)接口的子類:

public class Test implements OneInterface,TwoInterface{ //多接口實現(xiàn)

@Override

public void msgOne() { //子類去實現(xiàn)接口1的方法

System.out.println(oneName);

}

@Override

public String msgTwo() { //子類去實現(xiàn)接口2的方法

System.out.println(twoName);

return twoName;

}

public static void main(String[] args){

Test t=new Test(); //子類實例對象

t.msgOne(); //對象調(diào)用方法

t.msgTwo();

}

}

接口的作用:(不是三言兩語就能說清楚的)

1、解決了java的單一繼承(extends)。

抽象類:abstract修飾的類。

抽象類注意事項:

1、abstract 可以修飾類或方法,但不可以修飾成員和構(gòu)造方法。

2、抽象類對象不能通過new關(guān)鍵字實例化。

3、抽象方法不在聲明它的類中實現(xiàn),但必須在某個子類中重寫。

4、abstract 關(guān)鍵字不能應(yīng)用于 static、private 、 final 修飾的方法,因為這些方法不能被重寫。

5、抽象類不一定要有抽象方法,但有抽象方法的類必定是抽象類。

抽象類代碼例子:

public abstract class Abstract {

String oneName="小明";

String twoName="小紅";

public abstract void msgOne(); //抽象類自己的不能實現(xiàn)的方法

public abstract String msgTwo();

static void test(){? //抽象類自己的可以實現(xiàn)的方法

System.out.println("小明\n小紅");

}

public static void main(String[] args){

test();? //抽象類不能創(chuàng)建對象,所以用static修飾方法,方便調(diào)用

}

}

繼承抽象類的子類:

public class Test extends Abstract{? //繼承抽象類

@Override

public void msgOne() {? //重寫了抽象類的方法

System.out.println(oneName);

}

@Override

public String msgTwo() {? //重寫了抽象類的方法

System.out.println(twoName);

return twoName;

}

public static void main(String[] args){

Test t=new Test();? //子類實例對象

t.msgOne(); //對象調(diào)用方法

t.msgTwo();

}

}

運行結(jié)果:(相同)

小明

小紅

接口與抽象類的區(qū)別:

1、接口多實現(xiàn),抽象單繼承。

2、抽象類中有自己可以實現(xiàn)的方法體,但接口不行。

3、抽象類可以有靜態(tài)代碼塊和靜態(tài)方法,但接口不行。

4、圖:

最后:仔細認真理解!

讓我恰個飯吧.ヘ( ̄ω ̄ヘ)

支付寶 ——————- 微信

恰飯廣告

總結(jié)

以上是生活随笔為你收集整理的java抽象和接口的理解_Java接口实现与抽象类的区别理解 | 彬菌的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。