成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JAVA基礎(chǔ)整理(一)

Half / 2143人閱讀

摘要:方法區(qū)存儲不變的東西類加載信息,靜態(tài)變量,字符串常量。通用分代垃圾回收基礎(chǔ)時(shí)只需要知道有這幾種方法即可四內(nèi)存分析靜態(tài)變量,靜態(tài)方法,靜態(tài)初始化塊靜態(tài)變量與方法不需要具體的對象就可以調(diào)用用類名調(diào)用,靜態(tài)初始化塊后就會調(diào)用了。

一:面向?qū)ο笈c面向過程

  籠統(tǒng)說,一個(gè)流程簡單一個(gè)復(fù)雜,面向過程好比開車上路,可以簡單羅列出幾個(gè)動(dòng)作:上車,系安全帶,點(diǎn)火,出發(fā);向過程好比造出一輛汽車,肯定不能從焊鐵做起,第一步是收集所需要的各個(gè)部分(對象),通過一定的規(guī)律與邏輯去操作對象完成最終的結(jié)果。

  對象是實(shí)際的東西,類是對象的模板,對對象的抽象,對象就按照類所規(guī)定的模板去形成實(shí)際的對象。

面向?qū)ο笕笤瓌t: 封裝:

  因?yàn)槲覀儾幌胂蛲獠勘┞段覀兊臄?shù)據(jù),因?yàn)槿绻覀兊臄?shù)據(jù)對外暴露的話,我們的數(shù)據(jù)如果在某個(gè)被他人調(diào)用的地方被修改我們是不可知的,所以有個(gè)封裝。你按我對外提供的接口進(jìn)行操作,保證你不會對我對象內(nèi)部的結(jié)構(gòu)進(jìn)行破壞。

繼承與多態(tài):

多態(tài),就是多種形態(tài)。多態(tài)大致有兩種情況:

? 第一,假如,一個(gè)動(dòng)物類,動(dòng)物有一個(gè)run方法,我們用這個(gè)類描述動(dòng)物的運(yùn)動(dòng),然后有個(gè)貓,處于面向?qū)ο蟮南嚓P(guān)聯(lián)思想,貓繼承自動(dòng)物,然后貓不滿意這個(gè)方法,重寫了一個(gè),貓的run的時(shí)候有一個(gè)叫的動(dòng)作,不同對象,同一動(dòng)作,最終執(zhí)行的效果不同。

? 第二:有一個(gè)貓,這個(gè)貓的run是有參數(shù)的,調(diào)用了貓的run方法,貓開始跑,每小時(shí)20邁,然后我們再調(diào)用run方法,傳了一個(gè)魚給貓,貓吃了魚就更有動(dòng)力,然后每小時(shí)30邁開始跑。同一個(gè)對象,同一個(gè)行為,傳遞的消息不同,最終執(zhí)行的效果不同。

  繼承與多態(tài)要一起理解,繼承是基礎(chǔ),多態(tài)是擴(kuò)展。因?yàn)閷ο笾g會有重復(fù)的代碼,所以我們有了繼承,就像現(xiàn)實(shí)生活中子女繼承父母的資源一樣,但這種方法只能解決有關(guān)聯(lián)對象間的代碼重復(fù)問題。如果對象之間無關(guān),解決代碼重復(fù),我們需要依賴AOP。

多態(tài)是在繼承的基礎(chǔ)上實(shí)現(xiàn)的,多態(tài)實(shí)現(xiàn)的三個(gè)必要條件:
繼承
方法重寫(override)
父類引用指向子類對象,例如:Human human = new Man() ,new Man() 是一個(gè)子類對象,用一個(gè)父類引用human來指向子類對象。

二:內(nèi)存管理分析(初步)

棧內(nèi)存,堆內(nèi)存,方法區(qū)(隸屬于堆里,但是有必要多帶帶拉出來談)

棧內(nèi)存:

基本數(shù)據(jù)類型 ,結(jié)構(gòu)大致為:變量名 :變量值 這樣的表格形式

棧是線程私有的,連續(xù)的,不同線程之間無法共享數(shù)據(jù)。

速度快

堆內(nèi)存:

堆是線程間共享的,區(qū)域比棧大,速度慢,不連續(xù)的

存儲對象(在棧里對象存儲的是一個(gè)地址,例如 張三:0X0001)對象張三具體的信息要去0X0001這塊內(nèi)存塊里找。

方法區(qū):

存儲不變的東西:

類加載信息,靜態(tài)變量,字符串常量。也就是不依賴具體對象的信息。

三:垃圾回收算法入門(引用計(jì)數(shù),引用可達(dá),通用分代垃圾回收)這部分深入要去看一遍《深入理解java虛擬機(jī)》 引用計(jì)數(shù)法:

  每個(gè)對象有一個(gè)引用計(jì)數(shù)屬性,新增一個(gè)引用時(shí)計(jì)數(shù)加1,引用釋放時(shí)計(jì)數(shù)減1,計(jì)數(shù)為0時(shí)可以回收。此方法簡單,無法解決對象相互循環(huán)引用 的問題。(例如,)

引用可達(dá):

  從GC Roots開始向下搜索,搜索所走過的路徑稱為引用鏈。當(dāng)一個(gè)對象到GC Roots沒有任何引用鏈相連時(shí),則證明此對象是不可用的。不可達(dá)對象。

通用分代垃圾回收:(基礎(chǔ)時(shí)只需要知道有這幾種方法即可) 四:內(nèi)存分析靜態(tài)變量,靜態(tài)方法,靜態(tài)初始化塊

  靜態(tài)變量與方法不需要具體的對象就可以調(diào)用(用類名調(diào)用),靜態(tài)初始化塊new后就會調(diào)用了。

五:重寫Override返回值類型問題

方法的重寫(override)要遵循兩同兩小一大的原則:(子類方法相對于父類方法)

1)兩同
1.1)方法名相同
1.2)方法參數(shù)列表相同
2)兩小
2.1)返回類型若為引用類型必須小于或等于父類的,若為基本類型或者void則必須相同
2.2)拋出的異常必須小于等于父類的
3)一大
子類方法的訪問權(quán)限要大于等于父類的

六:javabean規(guī)則(一種類的規(guī)范)

這個(gè)Java類必須具有一個(gè)無參的構(gòu)造函數(shù)
屬性必須私有化。
私有化的屬性必須通過public類型的方法暴露給其它程序,并且方法的命名也必須遵守一定的命名規(guī)范。

七:數(shù)組的定義,foreach的使用

for(int val:a)
{

   System.out.println(val);

}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/77686.html

相關(guān)文章

  • Java基礎(chǔ)知識整理之操作Redis(

    摘要:是一個(gè)由寫的存儲系統(tǒng)。是一個(gè)開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹悼梢允亲址A斜砑虾陀行蚣系阮愋汀? REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲系統(tǒng)。Redis是一個(gè)開源的使用ANSI C語言編寫、遵...

    honhon 評論0 收藏0
  • Java基礎(chǔ)知識整理之操作Redis(

    摘要:是一個(gè)由寫的存儲系統(tǒng)。是一個(gè)開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹悼梢允亲址A斜砑虾陀行蚣系阮愋汀? REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲系統(tǒng)。Redis是一個(gè)開源的使用ANSI C語言編寫、遵...

    2shou 評論0 收藏0
  • Java基礎(chǔ)知識整理之操作Redis(二)

    摘要:操作之連接以及簡單操作下載對應(yīng)的驅(qū)動(dòng)包下載創(chuàng)建一個(gè)連接類連接主機(jī)地址端口號登錄密碼連接服務(wù)器權(quán)限認(rèn)證連接完成會返回緩存鏈接錯(cuò)誤查詢所有中的查詢所有的為通配符清除所有的中的是清除所有的的命令如果清理完成,會返回完整的代碼聲明對象測試地址端口密 Java操作Redis之連接以及簡單操作 1.下載對應(yīng)的驅(qū)動(dòng)包 下載 jedis.jar :https://mvnrepository.com/a...

    mingde 評論0 收藏0
  • 我的阿里之路+Java面經(jīng)考點(diǎn)

    摘要:我的是忙碌的一年,從年初備戰(zhàn)實(shí)習(xí)春招,年三十都在死磕源碼,三月份經(jīng)歷了阿里五次面試,四月順利收到實(shí)習(xí)。因?yàn)槲倚睦砗芮宄?,我的目?biāo)是阿里。所以在收到阿里之后的那晚,我重新規(guī)劃了接下來的學(xué)習(xí)計(jì)劃,將我的短期目標(biāo)更新成拿下阿里轉(zhuǎn)正。 我的2017是忙碌的一年,從年初備戰(zhàn)實(shí)習(xí)春招,年三十都在死磕JDK源碼,三月份經(jīng)歷了阿里五次面試,四月順利收到實(shí)習(xí)offer。然后五月懷著忐忑的心情開始了螞蟻金...

    姘擱『 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<