承蒙各位厚愛,我們一起每天進步一點點!(鼠標選中空白處查看答案)
1、以下二維數組聲明合法的是( )
正確答案: C
char[2][3] ch = new char[][]
char[2][] ch = new char[][3]
char[][] ch = new char[2][3]
char[][] ch = new [2]char[3]
題解:定義數組,等號左邊不能出現數字,也就是數組的不管什么大小 不能出現在左邊以下這樣定義都是正確的:
int [][] table0 = new int[2][2];
int [][] table1 = new int[2][];
int [] table2 [] = new int[2][2];
int [] table3 [] = new int[2][];
2、
class Foo { final int i; int j; public void doSomething() { System.out.println(++j + i); } }
的輸出是?
正確答案: D
0
1
2
不能執行,因為編譯有錯
題解:類的final成員變量必須滿足以下其中一個條件 1、在構造函數中賦值 2、初始化賦值
3、使用mvc模式設計的web應用程序具有以下優點,除了?
正確答案: D
可維護行強
可擴展性強
代碼重復少
大大減少代碼量
題解: MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典范,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用于映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。 MVC只是將分管不同功能的邏輯代碼進行了隔離,增強了可維護和可擴展性,增強代碼復用性,因此可以減少代碼重復。但是不保證減少代碼量,多層次的調用模式還有可能增加代碼量。
4、訪問權限控制從最大權限到最小權限依次為:public、 包訪問權限、protected和private 。( )
正確答案: B
正確
錯誤
題解:這可是個送分題,應該是:public>protected>默認(包訪問權限)>private,因為protected除了可以被同一包訪問,還可以被包外的子類所訪問。
5、下面對靜態數據成員的描述中,正確的是
正確答案: A
靜態數據成員可以在類體內進行初始化
靜態數據成員不可以被類的對象調用
靜態數據成員不受private控制符的作用
靜態數據成員可以直接用類名調用
題解:大多數可能會疑惑D,D選項需要考慮在A類通過類名訪問B類的靜態成員變量時,B類的靜態成員變量必須public修飾,所以D項要注意訪問權限。
6、有如下一段代碼,請選擇其運行結果()
1
2
3
4
5
6
7
8
9
10
|
public class StringDemo{ private static final String MESSAGE= "taobao" ; public static void main(String [] args) { String a = "tao" + "bao" ; String b= "tao" ; String c= "bao" ; System.out.println(a==MESSAGE); System.out.println((b+c)==MESSAGE); } } |
正確答案: C
true true
false false
true false
false true
題解:要注意兩個問題:
1,字符串在java中存儲在字符串常量區中
2,==判斷的是對象引用是否是同一個引用,判斷字符串相等要用equals方法首先判斷a==MESSAGE 同一份字符串常量在內存中只有一份,因此是同一地址,返回true 再次比較(b+c)==MESSAGE 這相當于 new String(b+c)==MESSAGE 這里new了一個String對象,所以返回false
7、下列關于JAVA多線程的敘述正確的是()
正確答案: B C
調用start()方法和run()都可以啟動一個線程
CyclicBarrier和CountDownLatch都可以讓一組線程等待其他線程
Callable類的call()方法可以返回值和拋出異常
新建的線程調用start()方法就能立即進行運行狀態
題解:
A. start()方法來啟動線程,真正實現了多線程運行,調用了run()方法;run()方法當作普通方法的方式調用。
B. CyclicBarrier讓一組線程等待其他線程;CountDownLatch讓一組線程等待某個事件發生。
C. Callable中的call比Runnable中的run厲害就厲害在有返回值和可以拋出異常。同時這個返回值和線程池一起用的時候可以返回一個異步對象Future。
D. start()方法讓thread進去可運行狀態(runnable),等待獲取CPU的使用權。
8、下列可作為java語言標識符的是()
正確答案: A B C
a1
$1
_1
11
題解: Java標識符由數字,字母和下劃線(_),美元符號($)或人民幣符號(¥)組成。在Java中是區分大小寫的,而且還要求首位不能是數字。最重要的是,Java關鍵字不能當作Java標識符。
9、下面哪些屬于JSP內置對象及方法?
正確答案: A B C D
request
out
application
config
題解: JSP九大內置對象有:
1.request對象客戶端的請求信息被封裝在request對象中,通過它才能了解到客戶的需求,然后做出響應。它是HttpServletRequest類的實例。
2.response對象 response對象包含了響應客戶請求的有關信息,但在JSP中很少直接用到它。它是HttpServletResponse類的實例。
3.session對象 session對象指的是客戶端與服務器的一次會話,從客戶連到服務器的一個WebApplication開始,直到客戶端與服務器斷開連接為止。它是HttpSession類的實例.
4.out對象 out對象是JspWriter類的實例,是向客戶端輸出內容常用的對象
5.page對象 page對象就是指向當前JSP頁面本身,有點象類中的this指針,它是java.lang.Object類的實例
6.application對象 application對象實現了用戶間數據的共享,可存放全局變量。它開始于服務器的啟動,直到服務器的關閉,在此期間,此對象將一直存在;這樣在用戶的前后連接或不同用戶之間的連接中,可以對此對象的同一屬性進行操作;在任何地方對此對象屬性的操作,都將影響到其他用戶對此的訪問。服務器的啟動和關閉決定了application對象的生命。它是ServletContext類的實例。
7.exception對象 exception對象是一個例外對象,當一個頁面在運行過程中發生了例外,就產生這個對象。如果一個JSP頁面要應用此對象,就必須把isErrorPage設為true,否則無法編譯。他實際上是java.lang.Throwable的對象
8.pageContext對象 pageContext對象提供了對JSP頁面內所有的對象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當于頁面中所有功能的集大成者,它的本 類名也叫pageContext。
9.config對象 config對象是在一個Servlet初始化時,JSP引擎向它傳遞信息用的,此信息包括Servlet初始化時所要用到的參數(通過屬性名和屬性值構成)以及服務器的有關信息(通過傳遞一個ServletContext對象)
10、以下類型為Final類型的為()
正確答案: B C
HashMap
StringBuffer
String
Hashtable
題解: StringBuilder , StringBuffer ,String 都是 final 的,但是為什么StringBuilder , StringBuffer可以進行修改呢,因為不可變包括的是,引用不可變以及對象不可變,而這三個都是屬于引用不可變,(也就是地址不要變,里面的內容隨心所欲),而StringBuilder , StringBuffer 中都包含右append方法,可對對象中的內容進行增加。而String a=“123”+new String(“456”);實際上底層是用了一個StringBuffer 進行append。 String里定義的是final類型的字符數組,所以不可變。 HashMap和Hashtable沒有final修飾。
答案匯總:
1、正確答案: C
2、正確答案: D
3、正確答案: D
4、正確答案: B
5、正確答案: A
6、正確答案: C
7、正確答案: B C
8、正確答案: A B C
9、正確答案: A B C D
10、正確答案: B C
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注服務器之家的更多內容!
原文鏈接:https://blog.csdn.net/weixin_43883917/article/details/118794709