Java面試技巧和重點分析

2021-09-20 08:24:08 字數 2396 閱讀 9152

雖然本人也是剛入行不久,但是之前也做過一些面試準備,剛好7--8月份,還有部分學生或者初入開發行業的潛在同行,正在找工作,所以把自己的感觸分享給大家,希望能夠幫助到大家,能夠順利的通過面試筆試,進入自己心儀的公司。

做為一名應屆生或者初入開發行業人員,應該注重基礎知識和一些框架工具的使用。

2.1:基礎知識是系統原理和演算法之類的,對這些原理理解的深度很重要,因為這是一種思維方式,所有的語言底層原理都差不多;乙個人的技術上限是由他的基礎決定的,在面試官面前展現的基礎越紮實給面試官留下的印象更好。

2.2:對框架工具的了解不說是所有的,但是針對目前主流的框架不說了解的很清楚,但是也應該知道一些,比如ssh、springboot、springcloud這些框架你需要知道他們的使用和他們核心的實現原理。比如spring,你要知道 ioc , aop 和他的工廠是怎麼實現的吧?這個東西你平時不去深究,你使用再久spring可能都不知道原理。但是你不去了解先進技術的實現原理你怎麼可能研究出新的技術和框架?

2.3:知識的了解不應該只浮於表面,應該有深度和廣度。這點在我進入公司工作之前我沒有任何認知,但是在進入公司後和領導、同事接觸後,深深的發現自己對知識積累點的單薄,可能有的人會說,這些基礎的東西這麼簡單,我早就學會了,平時一直都在寫,沒必要去專門再學。但是這樣的,請問,天天在用string的你,知道它的實現,能理解應用那些設計模式嗎?

在面對面試官的時候,你永遠不會知道他的下乙個問題是什麼,所以對知識點的儲存,深挖永遠都沒有錯,總結一下就是,打好基礎底子,千萬不要飄,深入學習,這樣你面對面試官的時候,才能有更多的可以聊的話題,從容面對面試官的話題,更快的融入公司。

以上我個人看法,並不一定是正確的。每個人的想法都不一樣,畢竟自己目前也還是乙個菜鳥,希望和大家在學習的道路上共同進步,另外以下是總結的一些面試題目,有興趣可以看下,謝謝

1ã物件導向的特徵有哪些方面?

答:物件導向的特徵主要有以下幾個方面:

- 抽象:抽象是將一類物件的共同特徵總結出來構造類的過程,包括資料抽象和行為抽象兩方面。抽象只關注物件有哪些屬性和行為,並不關注這些行為的細節是什麼。

- 繼承:繼承是從已有類得到繼承資訊建立新類的過程。提供繼承資訊的類被稱為父類(超類、基類);得到繼承資訊的類被稱為子類(派生類)。繼承讓變化中的軟體系統有了一定的延續性,同時繼承也是封裝程式中可變因素的重要手段。

- 封裝:通常認為封裝是把資料和運算元據的方法繫結起來,對資料的訪問只能通過已定義的介面。物件導向的本質就是將現實世界描繪成一系列完全自治、封閉的物件。我們在類中編寫的方法就是對實現細節的一種封裝;我們編寫乙個類就是對資料和資料操作的封裝。可以說,封裝就是隱藏一切可隱藏的東西,只向外界提供最簡單的程式設計介面。

- 多型性:多型性是指允許不同子型別的物件對同一訊息作出不同的響應。簡單的說就是用同樣的物件引用呼叫同樣的方法但是做了不同的事情。多型性分為編譯時的多型性和執行時的多型性。如果將物件的方法視為物件向外界提供的服務,那麼執行時的多型性可以解釋為:當a系統訪問b系統提供的服務時,b系統有多種提供服務的方式,但一切對a系統來說都是透明的。方法過載(overload)實現的是編譯時的多型性(也稱為前繫結),而方法重寫(override)實現的是執行時的多型性(也稱為後繫結)。執行時的多型是物件導向最精髓的東西,要實現多型需要做兩件事:1). 方法重寫(子類繼承父類並重寫父類中已有的或抽象的方法);2). 物件造型(用父型別引用引用子型別物件,這樣同樣的引用呼叫同樣的方法就會根據子類物件的不同而表現出不同的行為)。

2ãfloat f=3.4;是否正確?

答:不正確。3.4是雙精度數,將雙精度型(double)賦值給浮點型(float)屬於下轉型(down-casting,也稱為窄化)會造成精度損失,因此需要強制型別轉換float f =(float)3.4; 或者寫成float f =3.4f;。

3ã:成員變數與區域性變數的區別?

成員變數:有類成員變數(有static修飾)和例項成員變數(無static修飾)兩種

區域性變數:有**塊區域性變數,形參,方法區域性變數三種

區別:作用範圍不同,成員變數對整個類有效,區域性變數只對該方法或**塊有用

定義成員變數是可以不初始化,區域性變數除了形參之外,必須初始化

4ãequals與 == 的區別

==既可以比較基本型別,也可以比較引用型別,比較引用型別時,必須是父子關係

equals只能比較引用型別,比較是位址

5ã介面與抽象類的區別

區別:相同點:

1,都不能例項化

2,都有抽象方法

不同點:

1,介面只能定義常量,抽象類既可以定義常量也可以定義變數

2,介面裡沒有構造器和初始化塊,抽象類有構造器和初始化塊

3,介面裡只有抽象方法,抽象類裡有抽象方法和普通方法

4,介面可以實現多個,抽象類的繼承只能繼承乙個

5,介面只能實現介面,不能實現其他類,抽象類即可實現介面,也可繼承其他類

6,介面定義用inte***ce,抽象類定義用extends

java面試經歷分析

1.mysql,oracle,sqlserver tomcat的預設埠號?答 mysql 3306 oracle 1521 tomcat 8080 sqlserver 1433 2.寫乙個多執行緒賣票程式 extends thread implements runnable 3.遵循以下原則有助於規...

UDP和TCP 面試問題重點

一 udp 使用者資料報協議 其特點 1 udp是無連線 2 udp使用盡最大努力交付,即不保證可靠性 3 udp是面向報文的 4 udp 沒有擁塞控制,所以即使網路出現擁塞,也不會使源主機的傳送速率降低。5 udp 支援一對 一 一對多 多對 一 多對多的互動通訊。6 udp的首部開銷小,只有8個...

面試重點 淺拷貝和深拷貝

淺拷貝 簡單的複製拷貝操作 淺拷貝帶來的問題就是 堆區的記憶體重複釋放,要利用深拷貝解決 深拷貝 在堆區重新申請空間,進行拷貝操作 總結 如果屬性有在堆區開闢的,一定要自己提供拷貝建構函式,防止淺拷貝帶來的問題 include pch.h include using namespace std cl...