Java快樂學(xué)習(xí)之---面相對象

特點:

? ? 1、將復(fù)雜的事情簡單化。

? ? 2、將以前過程中的執(zhí)行者變成指揮者

? ? 3、更符合當(dāng)代人的思維邏輯

類中怎么沒有定義主函數(shù)呢?

注意:主函數(shù)的存在,僅為該類是否需要獨立運行,如果不需要,主函數(shù)是不用定義的。

主函數(shù)的解釋:保證所在類的獨立運行,是程序的入口,被jvm調(diào)用。

封 裝(面向?qū)ο筇卣髦唬?/b>

是指隱藏對象的屬性和實現(xiàn)細(xì)節(jié),僅對外提供公共訪問方式。

好處:將變化隔離;便于使用;提高重用性;安全性。

封裝原則:將不需要對外提供的內(nèi)容都隱藏起來,把屬性都隱藏,提供公共方法對其訪問。

繼 承(面向?qū)ο筇卣髦唬?/h2>

java中對于繼承,java只支持單繼承。java雖然不直接支持多繼承,但是可實現(xiàn)多接口。

多 態(tài)(面向?qū)ο筇卣髦唬?/b>:

函數(shù)本身就具備多態(tài)性,某一種事物有不同的具體的體現(xiàn)。

體現(xiàn):父類引用或者接口的引用指向了自己的子類對象。//Animal a = new Cat();父類可以調(diào)用子類中覆寫過的(父類中有的方法)

多態(tài)的好處:提高了程序的擴展性。繼承的父類或接口一般是類庫中的東西,(如果要修改某個方法的具體實現(xiàn)方式)只有通過子類去覆寫要改變的某一個方法,這樣在通過將父類的應(yīng)用指向子類的實例去調(diào)用覆寫過的方法就行了!

多態(tài)的弊端:當(dāng)父類引用指向子類對象時,雖然提高了擴展性,但是只能訪問父類中具備的方法,不可以訪問子類中特有的方法。(前期不能使用后期產(chǎn)生的功能,即訪問的局限性)

多態(tài)的前提:

1:必須要有關(guān)系,比如繼承、或者實現(xiàn)。

2:通常會有覆蓋操作。


(二)Person p = new Person();

創(chuàng)建一個對象都在內(nèi)存中做了什么事情?

1先將硬盤上指定位置的Person.class文件加載進內(nèi)存。

2執(zhí)行main方法時,在棧內(nèi)存中開辟了main方法的空間(壓棧-進棧),然后在main方法的棧區(qū)分配了一個變量p。

3在堆內(nèi)存中開辟一個實體空間,分配了一個內(nèi)存首地址值。new

4在該實體空間中進行屬性的空間分配,并進行了默認(rèn)初始化。

5對空間中的屬性進行顯示初始化。

6進行實體的構(gòu)造代碼塊初始化。

7調(diào)用該實體對應(yīng)的構(gòu)造函數(shù),進行構(gòu)造函數(shù)初始化。()

8將首地址賦值給p,p變量就引用了該實體。(指向了該對象)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一:java概述:1,JDK:Java Development Kit,java的開發(fā)和運行環(huán)境,java的開發(fā)工...
    ZaneInTheSun閱讀 2,823評論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,853評論 18 399
  • 從三月份找實習(xí)到現(xiàn)在,面了一些公司,掛了不少,但最終還是拿到小米、百度、阿里、京東、新浪、CVTE、樂視家的研發(fā)崗...
    時芥藍(lán)閱讀 42,885評論 11 349
  • 轉(zhuǎn)自:http://blog.csdn.net/jackfrued/article/details/4492194...
    王帥199207閱讀 8,807評論 3 93
  • (一)Java部分 1、列舉出JAVA中6個比較常用的包【天威誠信面試題】 【參考答案】 java.lang;ja...
    獨云閱讀 7,279評論 0 62

友情鏈接更多精彩內(nèi)容