常見面試題(更新中)

2022-09-13 20:09:11 字數 1782 閱讀 4581

1:

//面試題:如下**哪句錯誤?為什麼錯?怎麼改?

short s = 5;

s += 10;//相當於s = (shrot)(s + 10);

//s = s +10;//編譯錯誤,需強制轉換!

*/2:名詞解釋

jvm:j**a虛擬機器

載入.class並執行.class

jre:j**a執行環境

除了包含jvm以外還包含了執行j**a程式所必須的環境

jre=jvm+j**a系統類庫(小零件)

jdk:j**a開發工具包

除了包含jre以外還包含了開發j**a程式所必須的命令工具

jdk=jre+編譯、執行等命令工具

說明:執行j**a程式的最小環境為jre

開發j**a程式的最小環境為jdk

3:氣泡排序

1)n個數冒n-1輪

2)每一輪都是從第乙個元素開始冒

每一次都是和它的下乙個元素相比

3)冒出來的元素就不再參與相比

/*int arr =

for(int i = 0;i < arr.length-1;i++)}}

代數:i = 0;i<3;i++

j = 0;j<3 78和23比, 換, 23,78,45,1-----j++

j = 1;j<3 78和45比, 換, 23,45,78,1-----j++

j = 2:j<3 78和1比, 換, 23,45,1,78-----j++

i = 1;i<3;i++

j = 0;j<2 23和45比, 不換, 23,45,1,78-----j++

j = 1;j<2 45和1比, 換, 23,1,45,78-----j++

i = 2;i<3;i++

j = 0;j<1 23和1比, 換, 1,23,45,78-----j++

*/

4.重寫與過載的區別(重點答重寫過載的第一點)

1)重寫

1.1)發生在父子類,方法名相同,引數列表相同,方法體不同。

1.2)遵循"執行期繫結",看物件型別來呼叫方法。

2)過載

2.1)發生在乙個類中,方法名相同,引數列表不同,方法體不同。

2.2)遵循"編譯期繫結",看引用/引數型別來呼叫方法。

5*程式=演算法+資料結構

1)演算法:解決問題的流程/步驟(順序、分支、迴圈)

2)資料結構:將資料按照某種特定的結構來儲存

設計良好的/合理的資料結構會導致好的演算法

6*小面試題

q:匿名內部類有獨立的class嗎?

a:有!

7*物件導向三大特徵:

1.封裝(保護程式)

1.1)類:封裝的是物件的屬性和行為

1.2)方法:封裝的是特定的業務邏輯功能實現

1.3)訪問控制修飾符:封裝的是具體的訪問許可權(資料私有化,行為公開化)

2.繼承

2.1)作用:**復用

2.2)超類:所有派生類所共有的屬性和行為

介面:部分派生類所共有的行為

派生類:派生類所特有的屬性和行為

2.3)繼承具有傳遞性,單一繼承、多介面實現

3.多型

3.1)意義:行為的多型(所有抽象方法都是多型的)

物件的多型(所有物件都是多型的)

3.2)向上造型、強制型別轉換、instanceof判斷

3.3)表現形式:

3.3.1)重寫:根據物件的不同來表現多型

3.3.2)過載:根據引數的不同來表現多型

常見面試題

1.get和post的區別 1 本質區別 get是向伺服器請求資料,post是向伺服器傳送資料。2 伺服器獲取值的方式 get方式提交的資料,伺服器端使用request.querystring獲取變數的值。post方式提交的資料,伺服器端使用request.form獲取資料。3 安全性 get安全效...

常見面試題

1 一行 實現1 100之和 lst i for i in range 1,101 print sum lst 2 如何在乙個函式內部修改全域性變數?在函式內部新增 global 變數名 這樣就可以在本地作用域定義全域性作用域了 name 大明 def eat name1 global name n...

常見面試題

dns解析 發起tcp三次握手,並建立tcp連線 發起http請求 伺服器相應http請求並得到html 伺服器解析html 並對頁面進行渲染然後返回給使用者 首先先進行ioc容器的初始化 ioc 容器的初始化過程分為三步驟 resource 定位 beandefinition 的載入和解析,bea...