Java日常練習題,每天進步一點點(26)

承蒙各位厚愛,我們一起每天進步一點點!(鼠標選中空白處查看答案)

1、定義:String s1 = “uml”; String s2 = “uml”; String s3= new String(“uml”); String s4= new String(“uml”);那麼,s1==s2;s3 == s4;s1.equals(s3); 判斷正確與否

正確答案: A

T,F,T

F,T,F

題解:
在這裡插入圖片描述

2、若所用變量都已正確定義,以下選項中,非法的表達式是()

正確答案: C

a!= 4||b==1

‘a’ % 3

‘a’ = 1/3

‘A’ + 32

題解:
C中的‘a’是char類型,1/3是int類型。將int賦值給char屬於從高向低賦值,所以錯誤

3、socket編程中,以下哪個socket的操作是不屬於服務端操作的()?

正確答案: C

accept

listen

connect

close

題解:
TCP客戶端:
1.建立連接套接字,設置Ip和端口監聽,socket()
2.建立連接 connect
3.write() 獲取網絡流對象 發送數據
4.read()獲取網絡流對象 接收數據
5.關閉套接字
TCP服務器端
1.建立端口監聽 socket()
2.綁定指定端口 bind()
3.listen 進行端口監聽
4.accept() 阻塞式 直到有客戶端訪問
5.read()獲取客戶端發送數據
6.write()發送返回數據
7.close關閉端口監聽

4、java如何返回request范圍內存在的對象?

正確答案: B

request.getRequestURL()

request.getAttribute()

request.getParameter()

request.getWriter()

題解:
request.getAttribute()方法返回request范圍內存在的對象,而request.getParameter()方法是獲取http提交過來的數據。getAttribute是返回對象,getParameter返回字符串。

5、以下哪個不屬於JVM堆內存中的區域()?

正確答案: B

survivor區

常量池

eden區

old區

題解:
jvm堆分為:新生代(一般是一個Eden區,兩個Survivor區),老年代(old區)。常量池屬於 PermGen(方法區)

6、如下代碼的輸出結果是什麼?

public class Test {

public int aMethod(){

static int i = 0;

i++;

return i;

}

public static void main(String args[]){

Test test = new Test();

test.aMethod();

int j = test.aMethod();

System.out.println(j);

}

}

正確答案: D

0

1

2

編譯失敗

題解:
Java中靜態變量隻能在類主體中定義,不能在方法中定義。 靜態變量屬於類所有而不屬於方法

7、以下JAVA程序代碼的輸出是

public static void main(String args[]) {

System.out.println(17^5);

}

正確答案: C

12

22

20

1419857

題解:
異或運算,位異運算符號。
運算規則是:兩個數轉為二進制,然後從高位開始比較,如果相同則為0,不相同則為1。
17:0001 0001
5: 0000 0101
結果:0001 0100 轉10進制:20

8、下面哪些情況可以引發異常:

正確答案: A B C

數組越界

指定URL不存在

使用throw語句拋出

使用throws語句

題解:
throws 和 throw:
throws出現在方法頭,表示可能會出現異常;
throw是在方法體,拋出瞭異常,執行throw則一定拋出瞭某種異常

9、關於Java的一些概念,下面哪些描述是正確的:( )

正確答案: B F

所有的Java異常和錯誤的基類都是java.lang.Exception, 包括java.lang.RuntimeException

通過try … catch … finally語句,finally中的語句部分無論發生什麼異常都會得到執行

java中所有的數據都是對象

Java通過垃圾回收回收不再引用的變量,垃圾回收時對象的finallize方法一定會得到執行

Java是跨平臺的語言,無論通過哪個版本的Java編寫的程序都能在所有的Java運行平臺中運行

Java通過synchronized進行訪問的同步,synchronized作用非靜態成員方法和靜態成員方法上同步的目標是不同的

題解:
A、java異常和錯誤的基類Throwable,包括Exception和Error
B、try…catch…finally finally不管什麼異常都會執行
C、java是面向對象的,但是不是所有的都是對象,基本數據類型就不是對象,所以才會有封裝類的;
D、如果是等待清理隊列中如果又被調用,則不會執行finallize方法
E、JAVA跨平臺性 實現在任意平臺的java程序都可以在其他平臺運行,題中說的版本不同
F、synchronized實現方式:三種

10、關於運行時常量池,下列哪個說法是正確的

正確答案: B C D

運行時常量池大小受棧區大小的影響

運行時常量池大小受方法區大小的影響

存放瞭編譯時期生成的各種字面量

存放編譯時期生成的符號引用

題解:常量池在方法區

答案匯總:

1、正確答案: A

2、正確答案: C

3、正確答案: C

4、正確答案: B

5、正確答案: B

6、正確答案: D

7、正確答案: C

8、正確答案: A B C

9、正確答案: B F

10、正確答案: B C D

總結

本篇文章就到這裡瞭,希望能給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: