java练习_Java基础笔试练习(一)
Java基礎筆試練習(一)
1. 若在某一個類定義中定義有如下的方法: abstract void performDial( ); 該方法屬于() ?
A.本地方法
B.最終方法
C.靜態方法
D.抽象方法
答案: D
解析:
- 本地方法:簡單地講,一個native Method就是一個java調用非java代碼的接口;native方法表示該方法要用另外一種依賴平臺的編程語言實現。
- 最終方法:final void B(){},這樣定義的方法就是最終方法,最終方法在子類中不可以被重寫,也就是說,如果有個子類繼承了這個最終方法所在的類,那么這個子類中不能出現void B(){}這樣的方法。
- 最終類:final class A {},這樣定義的類就是最終類,最終類不能被繼承。
- abstract修飾抽象類
2.在為傳統面向對象語言的程序做單元測試的時候,經常用到mock對象。Mock對象通過反射數。請問反射最大程度破壞了面向對象的以下哪個特性?
A.封裝
B.多態
C.繼承
D.抽象
答案: A
解析:
A.封裝
反射破壞代碼的封裝性,破壞原有的訪問修飾符訪問限制
3.以下程序的執行結果是:
static boolean foo(char c) { System.out.print(c); return true; }public static void main1(String[] args) { int i = 0; for (foo('A'); foo('B') && (i < 2); foo('C')) { i++; foo('D'); }}A.ABDCBDCB
B.ABCDABCD
C.編譯時出錯
D.運行時拋出異常
答案:
A
解析:
略,代碼敲一遍就知道了= =!
A.協議 用戶名
B.協議 主機名
C.主機名 ip
D.以上都不正確
答案:
B
解析:
**URL(Uniform Resource Locator) **,統一資源定位符,能夠對因特網的資源進行定位。
URL一般有四部分組成: ://:/
- 現在最常用的為http協議。
- 是指主機在因特網上的域名。
- http協議的默認為80(可以省略)。
- 是指要活的的文件的路徑。
5.以下程序的輸出結果是?
public class Example { String str = new String("good"); char[] ch = { 'a', 'b', 'c' }; public static void main(String args[]) { Example ex = new Example(); ex.change(ex.str, ex.ch); System.out.print(ex.str + " and "); System.out.print(ex.ch); } public static void change(String str, char ch[]) { str = "test ok"; ch[0] = 'g'; }}A.good and abc
B.good and gbc
C.test ok and abc
D.test ok and gbc
答案:
B
解析:
考察值傳遞和引用傳遞。對于值傳遞,拷貝的值用完之后就會被釋放,對原值沒有任何影響,但是對于引用傳遞,拷貝的是對象的引用,和原值指向的同一塊地址,即操作的是同一個對象,所以操作之間會相互影響
所以對于String str是值傳遞,操作之間互不影響,原值保持不變。而ch是數組,拷貝的是對象的引用,值發生了改變,因此選擇B
6.下面有關servlet service描述錯誤的是?
A.不管是post還是get方法提交過來的連接,都會在service中處理
B.doGet/doPost 則是在 javax.servlet.GenericServlet 中實現的
C.service()是在javax.servlet.Servlet接口中定義的
D.service判斷請求類型,決定是調用doGet還是doPost方法
答案:
B
解析:
doGet/doPost 則是在 javax.servlet.http.HttpServlet 中實現的
7.以下代碼運行輸出的是
public class Person{ private String name = "Person"; int age=0;}public class Child extends Person{ public String grade; public static void main(String[] args){ Person p = new Child(); System.out.println(p.name); }}A.輸出:Person
B.沒有輸出
C.編譯出錯
D.運行出錯
答案:
C
解析:
Java中對字段屬性是靜態綁定,方法成員是動態綁定,這里錯在:在子類中試圖訪問父類的private字段,所以編譯不通過,將private去掉就可訪問,不是動態綁定的問題,它本來就屬于靜態綁定。
8. 在 myjsp.jsp 中,關于下面的代碼說法錯誤的是: ( )
A.該頁面可以使用 exception 對象
B.該頁面發生異常會轉向 error.jsp
C.存在 errorPage 屬性時,isErrorPage 是默認為 false
D.error.jsp 頁面一定要有isErrorPage 屬性且值為 true
答案:
A
解析:
exception是JSP九大內置對象之一,其實例代表其他頁面的異常和錯誤。只有當頁面是錯誤處理頁面時,即isErroePage為true時,該對象才可以使用。對于C項,errorPage的實質就是JSP的異常處理機制,發生異常時才會跳轉到errorPage指定的頁面,沒必要給errorPage再設置一個errorPage。所以當errorPage屬性存在時, isErrorPage屬性值為false
9.Java對象的初始化方式有( )
A.初始化塊
B.構造器
C.定義變量時指定初始化值
D.其它各項都不對
答案:
A B C
解析:
對象的初始化方式:
1.new時初始化 ;
2.靜態工廠 newInstance;
3.反射Class.forName();
4.clone方式;
5.反序列化;
文末
歡迎關注個人微信公眾號:Coder編程
獲取最新原創技術文章和免費學習資料,更有大量精品思維導圖、面試資料、PMP備考資料等你來領,方便你隨時隨地學習技術知識!
文章收錄至
Github: https://github.com/CoderMerlin/coder-programming
Gitee: https://gitee.com/573059382/coder-programming
歡迎關注并star~
總結
以上是生活随笔為你收集整理的java练习_Java基础笔试练习(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 眼睛有小黑点在飞怎么治疗
- 下一篇: 孩子往上翻眼睛是什么原因