400-650-7353
您所在的位置:首頁(yè) > IT干貨資料 > java > 【Java基礎(chǔ)知識(shí)】Java的類與接口有什么作用

【Java基礎(chǔ)知識(shí)】Java的類與接口有什么作用

  • 發(fā)布: java培訓(xùn)
  • 來源:Java干貨資料
  • 2019-12-25 16:07:24
  • 閱讀()
  • 分享
  • 手機(jī)端入口

Java是一門面向?qū)ο蟮木幊陶Z言,主要核心點(diǎn)就是類,Java類具有封裝,繼承,多態(tài)的特性;

在Java中,類里面包含了某類事物的基本屬性,將這些屬性封裝起來,只對(duì)外部公開別人可以訪問的信息,不想讓別人訪問的信息,可以設(shè)置屬性將它隱藏起來,這樣就可以對(duì)類的屬性值進(jìn)行保護(hù),讓別人不可以隨意的進(jìn)行操作修改。

在Java中不支持多繼承,即一個(gè)子類不能有多個(gè)父類,原因在于,如果一個(gè)子類繼承了兩個(gè)父類,當(dāng)這兩個(gè)父類當(dāng)中都包含了同一個(gè)方法(方法名,參數(shù),返回值都一樣)的時(shí)候,這時(shí)候子類就不知道應(yīng)該使用父類中的那個(gè)方法,為了解決這一問題,就延伸出了接口的概念。

在接口中只聲明方法,不實(shí)現(xiàn)方法,意思是在一個(gè)接口當(dāng)中,不去具體實(shí)現(xiàn)一個(gè)方法的功能,只需要定義好方法的方法名,參數(shù),返回值即可,定義一個(gè)接口的關(guān)鍵字是interface,格式為public interface InterfaceName{};

Java的類與接口

當(dāng)定義好一個(gè)接口之后,任何類都可以去實(shí)現(xiàn)這個(gè)接口,實(shí)現(xiàn)接口的關(guān)鍵字為implements,格式為 public class ClassName implements InterfaceName {}; 當(dāng)一個(gè)類實(shí)現(xiàn)了某個(gè)接口之后,需要去實(shí)現(xiàn)這個(gè)接口所定義的方法,如果不去重寫這個(gè)方法,那么程序?qū)?huì)報(bào)錯(cuò)。

在Java中一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,這樣當(dāng)兩個(gè)接口中即使有同一個(gè)方法,也不會(huì)造成影響,因?yàn)榉椒ǖ木唧w功能是在子類中進(jìn)行實(shí)現(xiàn)的。

Java的另一大特性多態(tài),假設(shè)父類中有某個(gè)方法,父類對(duì)這個(gè)方法進(jìn)行了聲明,并實(shí)現(xiàn)了這個(gè)方法,當(dāng)子類繼承這個(gè)父類的時(shí)候,需要用到這個(gè)方法,但是子類需要用到這個(gè)方法的功能比父類的多,需要進(jìn)行延伸擴(kuò)展,這時(shí)候就需要子類去重寫這個(gè)方法,將他修改為自己需要的功能。這樣當(dāng)創(chuàng)建一個(gè)子類的對(duì)象的時(shí)候,子對(duì)象調(diào)用這個(gè)方法的時(shí)候,就會(huì)調(diào)用子類重寫的方法功能,而不去使用父類的功能。但是有時(shí)候,子類需要用到父類的這個(gè)方法的功能,但是自己有需要延伸,這時(shí)候可以使用super關(guān)鍵字在子類的方法中調(diào)用父類的這個(gè)方法,從而減少代碼的重復(fù)率。

在Java中可以使用類創(chuàng)建一個(gè)對(duì)象,但是不可以使用接口去創(chuàng)建對(duì)象,因?yàn)榻涌谥袥]有具體的實(shí)現(xiàn),接口只能被一個(gè)類實(shí)現(xiàn)之后,才可以去創(chuàng)建實(shí)現(xiàn)的那個(gè)類。

文章“【Java基礎(chǔ)知識(shí)】Java的類與接口有什么作用”已幫助

>>本文地址:http://littlerockbway.com/zhuanye/2019/48227.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個(gè)方向的工作?

獲取測(cè)試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營(yíng)銷互聯(lián)網(wǎng)營(yíng)銷
  • JavaJava
  • Linux云計(jì)算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運(yùn)營(yíng)全域電商運(yùn)營(yíng)
  • 軟件測(cè)試軟件測(cè)試
  • 室內(nèi)設(shè)計(jì)室內(nèi)設(shè)計(jì)
  • 平面設(shè)計(jì)平面設(shè)計(jì)
  • 電商設(shè)計(jì)電商設(shè)計(jì)
  • 網(wǎng)頁(yè)設(shè)計(jì)網(wǎng)頁(yè)設(shè)計(jì)
  • 全鏈路UI/UE設(shè)計(jì)UI設(shè)計(jì)
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營(yíng)新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開發(fā)智能機(jī)器人
 

快速通道fast track

近期開班時(shí)間TIME