- 相關(guān)推薦
java面試基礎(chǔ)知識(shí)大全
java基礎(chǔ)知識(shí)在面試中是常考知識(shí)點(diǎn),那么java面試必備基礎(chǔ)知識(shí)點(diǎn)有哪些?下面跟yjbys小編一起來(lái)學(xué)習(xí)一下吧!
1、JVM、JRE和JDK的區(qū)別:
JVM(Java Virtual Machine):java虛擬機(jī),用于保證java的跨平臺(tái)的特性。
java語(yǔ)言是跨平臺(tái),jvm不是跨平臺(tái)的。
JRE(Java Runtime Environment):java的運(yùn)行環(huán)境,包括jvm+java的核心類庫(kù)。
JDK(Java Development Kit):java的開(kāi)發(fā)工具,包括jre+開(kāi)發(fā)工具
2、環(huán)境變量path和classpath的作用是什么?
(1)path是配置Windows可執(zhí)行文件的搜索路徑,即擴(kuò)展名為.exe的程序文件所在的目錄,
用于指定DOS窗口命令的路徑。
(2)Classpath是配置class文件所在的目錄,用于指定類搜索路徑,JVM就是通過(guò)它來(lái)尋找該類的class類文件的。
3、變量有什么用?為什么要定義變量?什么時(shí)候用?
答:變量的作用:用來(lái)存儲(chǔ)數(shù)據(jù)。
為什么要定義變量:用來(lái)不斷的存放同一類型的常量,并可以重復(fù)使用
4、&和&&的區(qū)別?
答:(1)&&會(huì)出現(xiàn)短路,如果可以通過(guò)第一個(gè)表達(dá)式判斷出整個(gè)表達(dá)式的結(jié)果,則不繼續(xù)后面表達(dá)式的運(yùn)算;
只能操作boolean類型數(shù)據(jù);
(2)&不會(huì)出現(xiàn)短路,將整個(gè)表達(dá)式都運(yùn)算。既可以操作boolean數(shù)據(jù)還可以操作數(shù)。
5、標(biāo)示符命名規(guī)則:
由數(shù)字(0-9),大小寫(xiě)英文字母,以及_和$組成。
不能以數(shù)字開(kāi)頭。
不能使用關(guān)鍵字來(lái)自定義命名。
6、數(shù)據(jù)類型:
(1)基本數(shù)據(jù)類型(4類8種):
整數(shù)類型:byte、short、int、long
浮點(diǎn)數(shù)類型:float、double
字符類型:char
布爾類型:boolean(ture false)
(2)引用數(shù)據(jù)類型:
類
接口
數(shù)組
7、類型轉(zhuǎn)換
精度從高到低 double float long int short(char) byte
(1)自動(dòng)類型轉(zhuǎn)換 將一個(gè)低精度---高精度
(2)強(qiáng)制類型轉(zhuǎn)換 將一個(gè)高精度---低精度(精度會(huì)下降)
8、java語(yǔ)言的三種技術(shù)架構(gòu)
J2EE:企業(yè)版
是為開(kāi)發(fā)企業(yè)環(huán)境下的應(yīng)用程序提供的一套解決方案。
該技術(shù)體系中包含的技術(shù)如 Servlet、Jsp等,主要針對(duì)于Web應(yīng)用程序開(kāi)發(fā)。
J2SE:標(biāo)準(zhǔn)版
是為開(kāi)發(fā)普通桌面和商務(wù)應(yīng)用程序提供的解決方案。
該技術(shù)體系是其他兩者的基礎(chǔ),可以完成一些桌面應(yīng)用程序的開(kāi)發(fā)。
比如Java版的掃雷。
J2ME:小型版
是為開(kāi)發(fā)電子消費(fèi)產(chǎn)品和嵌入式設(shè)備提供的解決方案。
該技術(shù)體系主要應(yīng)用于小型電子消費(fèi)類產(chǎn)品,如手機(jī)中的應(yīng)用程序等。
9、java的跨平臺(tái)性:
通過(guò)Java語(yǔ)言編寫(xiě)的應(yīng)用程序在不同的系統(tǒng)平臺(tái)上都可以運(yùn)行。
跨平臺(tái)的原因:
只要在需要運(yùn)行java應(yīng)用程序的操作系統(tǒng)上,先安裝一個(gè)Java虛擬機(jī)(JVM Java Virtual Machine)即可。
由JVM來(lái)負(fù)責(zé)Java程序在該系統(tǒng)中的運(yùn)行。
10、有符號(hào)數(shù)據(jù)的表示法(次重點(diǎn))
原碼,反碼(原碼取反),補(bǔ)碼(反碼+1)。
11、函數(shù)
定義:函數(shù)就是定義在類中的具有特定功能的一段獨(dú)立小程序。
特點(diǎn):
定義函數(shù)可以將功能代碼進(jìn)行封裝
便于對(duì)該功能進(jìn)行復(fù)用
函數(shù)只有被調(diào)用才會(huì)被執(zhí)行
函數(shù)的出現(xiàn)提高了代碼的復(fù)用性
對(duì)于函數(shù)沒(méi)有具體返回值的情況,返回值類型用關(guān)鍵字void表示,
那么該函數(shù)中的return語(yǔ)句如果在最后一行可以省略不寫(xiě)。
函數(shù)的應(yīng)用兩個(gè)明確:
明確要定義的功能最后的結(jié)果是什么?
明確在定義該功能的過(guò)程中,是否需要未知內(nèi)容參與運(yùn)算
12、重載:
概念:在同一個(gè)類中,允許存在一個(gè)以上的同名函數(shù),只要它們的參數(shù)個(gè)數(shù)或者參數(shù)類型不同即可。
特點(diǎn):與返回值類型無(wú)關(guān),只看參數(shù)列表(參數(shù)類型以及參數(shù)個(gè)數(shù))。
好處:方便于閱讀,優(yōu)化了程序設(shè)計(jì)。
13、數(shù)組:
概念:同一種數(shù)據(jù)類型的集合。
好處:可以自動(dòng)給數(shù)組中的元素從0開(kāi)始編號(hào),方便操作這些元素。
14、內(nèi)存結(jié)構(gòu):
棧內(nèi)存:用于存儲(chǔ)局部變量,當(dāng)數(shù)據(jù)使用完,所占空間會(huì)自動(dòng)釋放。
堆內(nèi)存:數(shù)組和對(duì)象,通過(guò)new建立的實(shí)例都存放在堆內(nèi)存中。
方法區(qū):靜態(tài)成員、構(gòu)造函數(shù)、常量池、線程池
本地方法區(qū):window系統(tǒng)占用
【java面試基礎(chǔ)知識(shí)】相關(guān)文章:
Java的基礎(chǔ)知識(shí)07-27
Java基礎(chǔ)知識(shí)詳解09-02
Java基礎(chǔ)知識(shí)總結(jié)07-25
Java入門(mén)基礎(chǔ)知識(shí):Java IO(輸入/輸出)09-23
JAVA認(rèn)證基礎(chǔ)知識(shí):Java獲取當(dāng)前的系統(tǒng)時(shí)間06-08
JAVA認(rèn)證基礎(chǔ)知識(shí):Java文件解壓縮示例10-14
Java基礎(chǔ)知識(shí)點(diǎn)歸納08-22