java面試題總結

2021-08-16 17:35:40 字數 1419 閱讀 5850

在牛客網做題,收錄一些題目與優秀回答。

1

2

3

4

5

6

7

8

9

10

publicclassstringdemo

}

方法區是各個執行緒共享的記憶體區域,它用於儲存已被虛擬機器載入的類資訊,常量,靜態變數,即時編譯器編譯後的**等資料。

被final修飾的變數必須要初始化,賦初值後不能再重新賦值。

被final修飾的變數必須顯示的初始化,初始化可以以三種方式:1

)定義時初始化,

2)在構造器中設定值,

3)在非靜態塊中為

final例項變數設定值。

抽象類可以有建構函式,介面不可以有建構函式

抽象類中可以有普通成員變數,介面中沒有普通成員變數,只能有常量  

抽象類中的方法可以被static修飾,介面中的方法不可以被static修飾

抽象類中可以有普通方法和抽象方法,介面中的方法全是抽象方法

抽象中的方法可以被public,protected等修飾符修飾,介面中的方法全都是public abstract的方法,如果省略修飾符,則預設的也都是public abstract修飾

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

如果要建立不帶任何方法定義和成員變數的基類

,就應該選擇介面而不是抽象類;

如果知道某個類是基類,第乙個選擇的應該是讓它成為介面,只有必須要方法定義和成員變數時才可以選擇抽象類,因為抽象類允許存在乙個或多個被具體實現對的方法,只要方法沒有完全被全部實現則該類仍是抽象類。

參考:抽象類其實是可以例項化的

,但是他的例項化方式不是通過new方式來建立物件,而是

通過父類的引用來指向子類的例項來間接地實現父類的例項化

(因為子類要例項化前,一定會先例項化他的父類。這樣

建立了繼承抽象類的子類的物件,也就把其父類(抽象類)給例項化了).

但是:介面是不能被例項化的(介面壓根就沒有建構函式),與上面的原理相似同樣  介面型別的引用可以指向其子類的物件

public abstract class a

public abstract void play();

}package com.etc;

public class b extends a

public void play()

public static void main(string args)

}執行b類結果如下: 父類已經例項化

aa子類已經例項化

java面試題總結

今天被架構師問了一連串的問題,估計問了有乙個多小時吧,有很多問題都答不上來,突然發現原來自己沒有掌握的知識太多了,原來我覺得技術是用來解決問題的,而不是用來研究的,但現在覺得要更快捷的解決問題,還得好好的研究他們的原理,凡事多問個 他的原理是什麼,底層是怎麼實現的 回來好好整理了一下知識點,我想就每...

面試題總結 html面試題)

附上鏈結 doctype 的作用是什麼?宣告一般位於文件的第一行,它的作用主要是告訴瀏覽器以什麼樣的模式來解析文件。一般指定了之後會以標準模式來 進行文件解析,否則就以相容模式進行解析。在標準模式下,瀏覽器的解析規則都是按照最新的標準進行解析的。而在相容模式下,瀏 覽器會以向後相容的方式來模擬老式瀏...

多執行緒Java面試題總結

57 thread類的sleep 方法和物件的wait 方法都可以讓執行緒暫停執行,它們有什麼區別?答 sleep 方法 休眠 是執行緒類 thread 的靜態方法,呼叫此方法會讓當前執行緒暫停執行指定的時間,將執行機會 cpu 讓給其他執行緒,但是物件的鎖依然保持,因此休眠時 間結束後會自動恢復 ...