更新時(shí)間:2020-03-10 10:15:12 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3613次
final在java中有什么作用?
final修飾的類叫最終類,該類不能被繼承。
final修飾的方法不能被重寫。
final修飾的變量叫常量,常量必須初始化,初始化之后值就不能被修改。
java中的Math.round(-1.5)等于多少?
等于-1,因?yàn)樵跀?shù)軸上取值時(shí),中間值(0.5)向右取整,所以正0.5是往上取整,負(fù)0.5是直接舍棄。
String屬于基礎(chǔ)的數(shù)據(jù)類型嗎?
String不屬于基礎(chǔ)類型,基礎(chǔ)類型有8種:byte、boolean、char、short、int、float、long、double,而String屬于對(duì)象。
java中操作字符串都有哪些類?它們之間有什么區(qū)別?
操作字符串的類有:String、StringBuffer、StringBuilder。
String和StringBuffer、StringBuilder的區(qū)別在于String聲明的是不可變的對(duì)象,每次操作都會(huì)生成新的String對(duì)象,然后將指針指向新的String對(duì)象,而StringBuffer、StringBuilder可以在原有對(duì)象的基礎(chǔ)上進(jìn)行操作,所以在經(jīng)常改變字符串內(nèi)容的情況下最好不要使用String。
StringBuffer和StringBuilder最大的區(qū)別在于,StringBuffer是線程安全的,而StringBuilder是非線程安全的,但StringBuilder的性能卻高于StringBuffer,所以在單線程環(huán)境下推薦使用StringBuilder,多線程環(huán)境下推薦使用StringBuffer。
Stringstr="i"與Stringstr=newString("i")一樣嗎?
不一樣,因?yàn)閮?nèi)存的分配方式不一樣。Stringstr="i"的方式,java虛擬機(jī)會(huì)將其分配到常量池中;而Stringstr=newString("i")則會(huì)被分到堆內(nèi)存中。
如何將字符串反轉(zhuǎn)?
使用StringBuilder或者stringBuffer的reverse()方法。
示例代碼:
//StringBufferreverseStringBuffer
stringBuffer=newStringBuffer();
stringBuffer.append("abcdefg");
System.out.println(stringBuffer.reverse());//gfedcba
//StringBuilderreverseStringBuilder
stringBuilder=newStringBuilder();
stringBuilder.append("abcdefg");
System.out.println(stringBuilder.reverse());//gfedcba
10.String類的常用方法都有那些?
indexOf():返回指定字符的索引。
charAt():返回指定索引處的字符。
replace():字符串替換。
trim():去除字符串兩端空白。
split():分割字符串,返回一個(gè)分割后的字符串?dāng)?shù)組。
getBytes():返回字符串的byte類型數(shù)組。
length():返回字符串長(zhǎng)度。
toLowerCase():將字符串轉(zhuǎn)成小寫字母。
toUpperCase():將字符串轉(zhuǎn)成大寫字符。
substring():截取字符串。
equals():字符串比較。
抽象類必須要有抽象方法嗎?
不需要,抽象類不一定非要有抽象方法。
示例代碼:
abstractclassCat{
publicstaticvoidsayHi(){
System.out.println("hi~");
}
}
上面代碼,抽象類并沒有抽象方法但完全可以正常運(yùn)行。
普通類和抽象類有哪些區(qū)別?
普通類不能包含抽象方法,抽象類可以包含抽象方法。
抽象類不能直接實(shí)例化,普通類可以直接實(shí)例化。
接口和抽象類有什么區(qū)別?
實(shí)現(xiàn):抽象類的子類使用extends來(lái)繼承;接口必須使用implements來(lái)實(shí)現(xiàn)接口。
構(gòu)造函數(shù):抽象類可以有構(gòu)造函數(shù);接口不能有。
main方法:抽象類可以有main方法,并且我們能運(yùn)行它;接口不能有main方法。
實(shí)現(xiàn)數(shù)量:類可以實(shí)現(xiàn)很多個(gè)接口;但是只能繼承一個(gè)抽象類。
訪問修飾符:接口中的方法默認(rèn)使用public修飾;抽象類中的方法可以是任意訪問修飾符。
java中IO流分為幾種?
按功能來(lái)分:輸入流(input)、輸出流(output)。
按類型來(lái)分:字節(jié)流和字符流。
字節(jié)流和字符流的區(qū)別是:字節(jié)流按8位傳輸以字節(jié)為單位輸入輸出數(shù)據(jù),字符流按16位傳輸以字符為單位輸入輸出數(shù)據(jù)。
BIO、NIO、AIO有什么區(qū)別?
BIO:BlockIO同步阻塞式IO,就是我們平常使用的傳統(tǒng)IO,它的特點(diǎn)是模式簡(jiǎn)單使用方便,并發(fā)處理能力低。
NIO:NewIO同步非阻塞IO,是傳統(tǒng)IO的升級(jí),客戶端和服務(wù)器端通過(guò)Channel(通道)通訊,實(shí)現(xiàn)了多路復(fù)用。
AIO:AsynchronousIO是NIO的升級(jí),也叫NIO2,實(shí)現(xiàn)了異步非堵塞IO,異步IO的操作基于事件和回調(diào)機(jī)制。
Files的常用方法都有哪些?
Files.exists():檢測(cè)文件路徑是否存在。
Files.createFile():創(chuàng)建文件。
Files.createDirectory():創(chuàng)建文件夾。
Files.delete():刪除一個(gè)文件或目錄。
Files.copy():復(fù)制文件。
Files.move():移動(dòng)文件。
Files.size():查看文件個(gè)數(shù)。
Files.read():讀取文件。
Files.write():寫入文件。
以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“2020年Java常見筆試題”的內(nèi)容,希望對(duì)大家有幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743