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

資訊專(zhuān)欄INFORMATION COLUMN

常見(jiàn)Java面試整理

MingjunYang / 1201人閱讀

摘要:在單個(gè)外圍類(lèi)中,可以讓多個(gè)內(nèi)部類(lèi)以不同的方式實(shí)現(xiàn)同一個(gè)接口,或者繼承同一個(gè)類(lèi)。創(chuàng)建內(nèi)部類(lèi)對(duì)象的時(shí)刻并不依賴(lài)于外圍類(lèi)對(duì)象的創(chuàng)建。內(nèi)部類(lèi)并沒(méi)有令人迷惑的關(guān)系,他就是一個(gè)獨(dú)立的實(shí)體。

接口的意義
規(guī)范,可拓展,回調(diào)

抽象類(lèi)的意義
為其子類(lèi)提供一個(gè)公共的類(lèi)型,封裝子類(lèi)中重復(fù)的內(nèi)容,定義抽象方法,子類(lèi)雖然有不同的實(shí)現(xiàn),但是定義是一致的

內(nèi)部類(lèi)的作用
內(nèi)部類(lèi)可以用多個(gè)實(shí)例,每個(gè)實(shí)例都有自己的狀態(tài)信息,并且與其他外圍對(duì)象的信息相互獨(dú)立。
在單個(gè)外圍類(lèi)中,可以讓多個(gè)內(nèi)部類(lèi)以不同的方式實(shí)現(xiàn)同一個(gè)接口,或者繼承同一個(gè)類(lèi)。
創(chuàng)建內(nèi)部類(lèi)對(duì)象的時(shí)刻并不依賴(lài)于外圍類(lèi)對(duì)象的創(chuàng)建。
內(nèi)部類(lèi)并沒(méi)有令人迷惑的“is-a”關(guān)系,他就是一個(gè)獨(dú)立的實(shí)體。
內(nèi)部類(lèi)提供了更好的封裝,除了該外圍類(lèi),其他類(lèi)都不能訪(fǎng)問(wèn)

父類(lèi)的靜態(tài)方法是否可以被子類(lèi)重寫(xiě)
static靜態(tài)的方法是屬于類(lèi)的,而繼承和重寫(xiě)是相對(duì)于對(duì)象來(lái)說(shuō)的。
如果子類(lèi)中有父類(lèi)中的靜態(tài)方法,只能說(shuō)是隱藏父類(lèi)的靜態(tài)方法

java虛擬機(jī)的特性
一般的高級(jí)語(yǔ)言如果要在不同的平臺(tái)上運(yùn)行,至少需要編譯成不同的目標(biāo)代碼的,而引入了java虛擬機(jī)后,java代碼在不同的
平臺(tái)上運(yùn)行不需要重新編譯

哪些情況下的對(duì)象會(huì)被垃圾回收機(jī)制處理掉
Java垃圾回收機(jī)制最基本的做法是分代回收,內(nèi)存中的區(qū)域被劃分成成不同的世代,年輕,年老,永久,當(dāng)一個(gè)對(duì)象存活時(shí)間足夠久的時(shí)候
就會(huì)被復(fù)制到年老代中,對(duì)于不同的世代可以使用不同的垃圾回收算法。進(jìn)行世代劃分的出發(fā)點(diǎn)是對(duì)應(yīng)用中對(duì)象存活時(shí)間進(jìn)行研究之后得出的統(tǒng)計(jì)規(guī)律。一般來(lái)說(shuō),一個(gè)應(yīng)用中的大部分對(duì)象的存活時(shí)間都很短。比如局部變量的存活時(shí)間就只在方法的執(zhí)行過(guò)程中。基于這一點(diǎn),對(duì)于年輕世代的垃圾回收算法就可以很有針對(duì)性。

== 和 equals 的區(qū)別
== 是一個(gè)操作符 而equals是一個(gè)方法,并且這個(gè)方法是Object中的方法,我們可以通過(guò)重寫(xiě)來(lái)equals方法來(lái)實(shí)現(xiàn)我們自己的比較邏輯

為什么說(shuō)對(duì)象的equals方法比較為true,那么他們的hashcode方法返回的int值也要相同?
如果兩個(gè)對(duì)象根據(jù)equals()方法比較是相等的,那么調(diào)用這兩個(gè)對(duì)象中任意一個(gè)對(duì)象的hashCode方法都必須產(chǎn)生同樣的整數(shù)結(jié)果。
如果兩個(gè)對(duì)象根據(jù)equals()方法比較是不相等的,那么調(diào)用這兩個(gè)對(duì)象中任意一個(gè)對(duì)象的hashCode方法,則不一定要產(chǎn)生相同的整數(shù)結(jié)果
從而在集合操作的時(shí)候有如下規(guī)則:
將對(duì)象放入到集合中時(shí),首先判斷要放入對(duì)象的hashcode值與集合中的任意一個(gè)元素的hashcode值是否相等,如果不相等直接將該對(duì)象放入集合中。如果hashcode值相等,然后再通過(guò)equals方法判斷要放入對(duì)象與集合中的任意一個(gè)對(duì)象是否相等,如果equals判斷不相等,直接將該元素放入到集合中,否則不放入。
回過(guò)來(lái)說(shuō)get的時(shí)候,HashMap也先調(diào)key.hashCode()算出數(shù)組下標(biāo),然后看equals如果是true就是找到了,所以就涉及equals

String , StringBuffer , StringBuilder
String : 字符串常量
StringBuffer , StringBuilder :字符串變量

Java多態(tài)的理解
多態(tài)存在的三個(gè)必要條件:

1. 要有繼承
2. 要有重寫(xiě)
3. 父類(lèi)引用指向子類(lèi)對(duì)象

線(xiàn)程的阻塞

里氏替換原則
子類(lèi)不能重寫(xiě)父類(lèi)已經(jīng)實(shí)現(xiàn)的方法
子類(lèi)重寫(xiě)父類(lèi)的方法時(shí),返回值必須比父類(lèi)更嚴(yán)格

try...finally try中有return時(shí)的執(zhí)行順序
首先f(wàn)inally代碼塊里的代碼是一定會(huì)執(zhí)行的

1. 如果try中有return語(yǔ)句,會(huì)先將return的結(jié)果保存起來(lái),然后執(zhí)行finally中的代碼,如果在finally中改變了要return
    的數(shù)據(jù)的值,也不會(huì)影響到return的值
2. 如果在finally中寫(xiě)了return語(yǔ)句,那么就會(huì)返回return的值

常見(jiàn)的異常

ArithmeticException(算術(shù)異常)

ClassCastException (類(lèi)轉(zhuǎn)換異常)

IllegalArgumentException (非法參數(shù)異常)

IndexOutOfBoundsException (下標(biāo)越界異常)

NullPointerException (空指針異常)

面向?qū)ο?原則一法則
單一職責(zé)原則 : 說(shuō)的就是高內(nèi)聚,一個(gè)類(lèi)只應(yīng)該做一件事
開(kāi)閉原則 : 對(duì)拓展開(kāi)發(fā),對(duì)修改關(guān)閉 ,想要表達(dá)的意思是:把可能會(huì)修改的地方抽象出來(lái)(接口),具體的實(shí)現(xiàn)是可以改變和拓展的
里氏替換原則 : 在用到父類(lèi)的地方一定可用其子類(lèi)代替,想要表達(dá)的是:同一個(gè)繼承體系中的對(duì)象應(yīng)該具有共同的行為特征
依賴(lài)注入原則 :要依賴(lài)抽象,不要依賴(lài)具體的實(shí)現(xiàn),為了實(shí)現(xiàn)這個(gè)原則,就要求我們?cè)诰幊痰臅r(shí)候針對(duì)抽象類(lèi)或者接口編程
接口分離:不應(yīng)該強(qiáng)迫程序依賴(lài)他們不需要的接口 一個(gè)接口不需要提供太多的行為,一個(gè)接口應(yīng)該只提供一種對(duì)外的功能,不應(yīng)該把所有的操作都封裝到一個(gè)接口中。
迪米特法則 :一個(gè)對(duì)象應(yīng)該對(duì)象其他對(duì)象盡量少的了解,意思是要我們降低程序的耦合度

sleep() 和 wait()的區(qū)別
sleep()會(huì)讓出cpu的執(zhí)行時(shí)間一段時(shí)間,但是不會(huì)釋放鎖,如果在同步的環(huán)境中,有可能出現(xiàn)死鎖
wait是指在一個(gè)已經(jīng)進(jìn)入了同步鎖的線(xiàn)程內(nèi),讓自己暫時(shí)讓出同步鎖,以便其他正在等待此鎖的線(xiàn)程可以得到同步鎖并運(yùn)行

什么時(shí)候使用同步
當(dāng)多個(gè)線(xiàn)程使用一個(gè)共享資源時(shí),使用同步

什么時(shí)候使用異步
當(dāng)一個(gè)操作需要會(huì)費(fèi)很長(zhǎng)的時(shí)間去做,并且不希望讓程序等待方法的返回時(shí),采用異步,這樣效率更高

什么是內(nèi)存泄漏
程序員創(chuàng)建了一個(gè)對(duì)象,以后一直不使用這個(gè)對(duì)象了,但是這個(gè)對(duì)象一直被引用,即這個(gè)對(duì)象無(wú)用但是卻無(wú)法被垃圾回收器回收
例如:長(zhǎng)生命周期的對(duì)象持有短生命周期對(duì)象的引用可能會(huì)發(fā)生內(nèi)存泄漏,

  一個(gè)外部類(lèi)對(duì)象返回了一個(gè)內(nèi)部類(lèi)的對(duì)象,這個(gè)內(nèi)部類(lèi)對(duì)象一直被引用了,即使那個(gè)外部類(lèi)實(shí)例對(duì)象不再被使用,但由于內(nèi)部類(lèi)持久外部類(lèi)的實(shí)例對(duì)象,這個(gè)外部類(lèi)對(duì)象將不會(huì)被垃圾回收,這也會(huì)造成內(nèi)存泄露

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

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

相關(guān)文章

  • 美團(tuán)實(shí)習(xí)Java崗面經(jīng),已拿offer

    摘要:作者鏈接來(lái)源牛客網(wǎng)今天剛剛收到的電話(huà),開(kāi)心,簡(jiǎn)單記錄一下美團(tuán)的面經(jīng)。當(dāng)時(shí)面試官評(píng)價(jià)基礎(chǔ)不是很好,其他還行。的三次握手四次揮手。整體感覺(jué)美團(tuán)的面試比較基礎(chǔ),但是各個(gè)方面都有涉及到。 作者:icysnowgx鏈接:https://www.nowcoder.com/disc...來(lái)源:??途W(wǎng) 今天剛剛收到hr的電話(huà),開(kāi)心,簡(jiǎn)單記錄一下美團(tuán)的面經(jīng)。時(shí)間隔的比較久了,簡(jiǎn)單回憶下,最后會(huì)給出我之前...

    OnlyMyRailgun 評(píng)論0 收藏0
  • 從簡(jiǎn)歷被拒到收割今日頭條 offer,我用一年時(shí)間破繭成蝶!

    摘要:正如我標(biāo)題所說(shuō),簡(jiǎn)歷被拒??戳宋液?jiǎn)歷之后說(shuō)頭條競(jìng)爭(zhēng)激烈,我背景不夠,點(diǎn)到為止。。三準(zhǔn)備面試其實(shí)從三月份投遞簡(jiǎn)歷開(kāi)始準(zhǔn)備面試到四月份收,也不過(guò)個(gè)月的時(shí)間,但這都是建立在我過(guò)去一年的積累啊。 本文是 無(wú)精瘋 同學(xué)投稿的面試經(jīng)歷 關(guān)注微信公眾號(hào):進(jìn)擊的java程序員K,即可獲取最新BAT面試資料一份 在此感謝 無(wú)精瘋 同學(xué)的分享 目錄: 印象中的頭條 面試背景 準(zhǔn)備面試 ...

    tracymac7 評(píng)論0 收藏0
  • 從簡(jiǎn)歷被拒到收割今日頭條 offer,我用一年時(shí)間破繭成蝶!

    摘要:正如我標(biāo)題所說(shuō),簡(jiǎn)歷被拒??戳宋液?jiǎn)歷之后說(shuō)頭條競(jìng)爭(zhēng)激烈,我背景不夠,點(diǎn)到為止。。三準(zhǔn)備面試其實(shí)從三月份投遞簡(jiǎn)歷開(kāi)始準(zhǔn)備面試到四月份收,也不過(guò)個(gè)月的時(shí)間,但這都是建立在我過(guò)去一年的積累啊。 本文是 無(wú)精瘋 同學(xué)投稿的面試經(jīng)歷 關(guān)注微信公眾號(hào):進(jìn)擊的java程序員K,即可獲取最新BAT面試資料一份 在此感謝 無(wú)精瘋 同學(xué)的分享目錄:印象中的頭條面試背景準(zhǔn)備面試頭條一面(Java+項(xiàng)目)頭條...

    wdzgege 評(píng)論0 收藏0
  • 思維導(dǎo)圖整理大廠(chǎng)面試高頻數(shù)組24: 合并兩個(gè)有序數(shù)組的兩種雙指針?biāo)枷? 力扣88

    摘要:此專(zhuān)欄文章是對(duì)力扣上算法題目各種方法的總結(jié)和歸納整理出最重要的思路和知識(shí)重點(diǎn)并以思維導(dǎo)圖形式呈現(xiàn)當(dāng)然也會(huì)加上我對(duì)導(dǎo)圖的詳解目的是為了更方便快捷的記憶和回憶算法重點(diǎn)不用每次都重復(fù)看題解畢竟算法不是做了一遍就能完全記住的所 ...

    darkerXi 評(píng)論0 收藏0
  • ??導(dǎo)圖整理大廠(chǎng)面試高頻數(shù)組8: 移除元素的雙指針優(yōu)化, 力扣27??

    此專(zhuān)欄文章是對(duì)力扣上算法題目各種方法的總結(jié)和歸納, 整理出最重要的思路和知識(shí)重點(diǎn)并以思維導(dǎo)圖形式呈現(xiàn), 當(dāng)然也會(huì)加上我對(duì)導(dǎo)圖的詳解. 目的是為了更方便快捷的記憶和回憶算法重點(diǎn)(不用每次都重復(fù)看題解), 畢竟算法不是做了一遍就能完全記住的. 所以本文適合已經(jīng)知道解題思路和方法, 想進(jìn)一步加強(qiáng)理解和記憶的朋友, 并不適合第一次接觸此題的朋友(可以根據(jù)題號(hào)先去力扣看看官方題解, 然后再看本文內(nèi)容). 關(guān)...

    zhangyucha0 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

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