400-650-7353
您所在的位置:首頁(yè) > IT干貨資料 > java > 【Java基礎(chǔ)知識(shí)】面向?qū)ο笥心男┨匦?

【Java基礎(chǔ)知識(shí)】面向?qū)ο笥心男┨匦?/h1>
  • 發(fā)布: java培訓(xùn)
  • 來(lái)源:Java培訓(xùn)干貨資料
  • 2020-07-01 16:57:55
  • 閱讀()
  • 分享
  • 手機(jī)端入口

Java是一門(mén)面向?qū)ο蟮恼Z(yǔ)言,面向?qū)ο蟮闹饕攸c(diǎn)有封裝,繼承,多態(tài)

封裝,意思就是把類的一些屬性進(jìn)行封裝(“隱藏”),盡可能的避免直接訪問(wèn)對(duì)象一些屬性,以保證其安全性,如果必須要訪問(wèn)這些屬性,我們可以單獨(dú)的提供一些接口(共有方法)進(jìn)行訪問(wèn),這樣我們就可以避免因?yàn)橹苯釉L問(wèn)屬性信息造成的誤操作。

繼承,在我們的生活中也有很多的繼承關(guān)系,比如子承父業(yè),在Java中,我們也可以有繼承的概念,但是繼承只存在于父子類(接口)中,比如我們經(jīng)常說(shuō)的Dog類繼承于Animal類,動(dòng)物類Animal具有自己的一些屬性,Dog屬于Animal的一種,所以具有Animal的一些屬性,但是Dog也有自己的一些特定屬性,這時(shí)候如果我們單獨(dú)在重新創(chuàng)建一個(gè)類Dog,就需要重新寫(xiě)一遍Animal類的屬性,既費(fèi)時(shí)又不好維護(hù),這時(shí)候我們就可以使用繼承,使用Dog類繼承Animal類,這時(shí)候,Dog就包含了Animal類的一些屬性,就不需要我們多次重復(fù)寫(xiě)這些屬性了。

多態(tài),即對(duì)于同一個(gè)對(duì)象,可能執(zhí)行出不同的結(jié)果,比如上面的Animal類,我們創(chuàng)建他的兩個(gè)子類,分別為Dog和Cat,Animal有個(gè)方法叫做public void jiaoSheng() { System.out.println( “動(dòng)物叫聲” ) ; } 兩個(gè)子類分別重寫(xiě)了這個(gè)方法,實(shí)現(xiàn)形式Dog:public void jiaoSheng() { System.out.pringln( “狗叫聲” ) ; }, Cat: public void jiaoSheng() { System.out.println( “貓叫聲” ) ; },這時(shí)候我們可以創(chuàng)建一個(gè)Animal對(duì)象 animal = new Animal( );這時(shí)候我們調(diào)用animal.jiaoSheng() ;打印出 “動(dòng)物叫聲”;當(dāng)animal = new Dog( ) ;的時(shí)候,我們調(diào)用animal.jiaoSheng() ; 打印出 “狗叫聲”;當(dāng) animal = new Cat() ;的時(shí)候,我們調(diào)用animal.jiaoSheng() ; 打印出“貓叫聲”;對(duì)于同一個(gè)對(duì)象animal我們調(diào)用同一個(gè)方法的時(shí)候,打印出的結(jié)果是不相同的,利用多態(tài),我們就可以進(jìn)行很多的擴(kuò)展,而不需要過(guò)多的去修改原先的代碼,可以保證代碼的可維護(hù)性;從上面我們可以看得出來(lái),如果要有多態(tài),需要滿足三個(gè)條件,第一個(gè)繼承(或?qū)崿F(xiàn)接口),第二個(gè)重寫(xiě),也就是需要重寫(xiě)父類里面的方法,否則不會(huì)實(shí)現(xiàn)多態(tài),對(duì)象調(diào)用的還是父類的方法,第三個(gè)父類引用指向子類對(duì)象,就像上面的animal他是一個(gè)Animal類的對(duì)象,但我們new的時(shí)候,創(chuàng)建的是子類Dog和Cat類的兩個(gè)對(duì)象;

以下為源碼示例:

public class Animal{

public void jiaoSheng() {

System.out.println(“動(dòng)物叫聲”);

}

}

public class Dog extends Animal{

@Override

public void jiaoSheng() {

System.out.println(“狗叫聲”);

}

}

public class Cat extends Animal{

@Override

public void jiaoSheng() {

System.out.println(“貓叫聲”);

}

}

文章“【Java基礎(chǔ)知識(shí)】面向?qū)ο笥心男┨匦?/b>”已幫助

>>本文地址:http://liujunjsxg.cn/zhuanye/2020/49115.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游戲開(kāi)發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運(yùn)營(yíng)新媒體
  • 直播帶貨直播帶貨
  • 智能機(jī)器人軟件開(kāi)發(fā)智能機(jī)器人
 

快速通道fast track

近期開(kāi)班時(shí)間TIME