牛客錯題2020年9月30日
-
下面有個hibernate延遲加載,說法錯誤的是?
正確答案: C 你的答案: D (錯誤)
Hibernate2延遲加載實現:a)實體對象 b)集合(Collection) Hibernate3 提供了屬性的延遲加載功能 get支持延遲加載,load不支持延遲加 hibernate使用Java反射機制,而不是字節碼增強程序來實現透明性 解釋: Hibernate 中 get()和load() 的區別: 1.get()採用立即加載方式,而load()採用 延遲加載 ; get()方法執行的時候,會立即向數據庫發出查詢語句, 而load()方法返回的是一個***(此***中只有一個id屬性),只有等真正使用該對象屬性的時候,纔會發出 sql語句 2.如果數據庫中沒有對應的記錄,get()方法返回的是null.而load()方法出現異常ObjectNotFoundException
-
typeof Date.now() 的值是:
正確答案: C 你的答案: B (錯誤)
"date" "object" "number" "error" 解釋: Date.now() 方法返回自1970年1月1日 00:00:00 UTC到當前時間的毫秒數。
-
以下哪項可能包含菜單條( )
正確答案: B 你的答案: C (錯誤)
Panel Frame Applet Dialog 解釋: Frame是Window的直接子類,一個Frame對象就是一個有標題有邊界的頂層窗口; Panel是Container的直接子類,一個Panel對象用來添加組件和其他Panel對象的容器。
-
URL u =new URL("http://www.123.com");。如果www.123.com不存在,則返回______。
正確答案: A 你的答案: D (錯誤)
http://www.123.com ”” null 拋出異常 解釋: 我們在執行URL u =new URL("http://www.123.com");這句話的時候確實要拋出異常,但是這個異常屬於IOException,不管網址是否存在,最後都會返回該網址的一個連接,打印出來就是該網址。
-
以下哪種JAVA的變量表達式使得變量a和變量b具有相同的內存引用地址( )
正確答案: A B 你的答案: B D (錯誤)
String a = "hello"; String b = "hello"; Integer a; Integer b = a; int a = 1; Integer b = new Integer(1); int a = 1; Integer b = 1; 解釋: 首先結論: (1)int與Integer、new Integer()進行==比較時,結果永遠爲true (2)Integer與new Integer()進行==比較時,結果永遠爲false (3)Integer與Integer進行==比較時,看範圍;在大於等於-128小於等於127的範圍內爲true,在此範圍外爲false。 下面是解析過程: 1.Integer與int比較時,Integer會有拆箱的過程,我們可以看看拆箱的代碼: 直接返回的就是value,因此int與Integer以及new Integer()進行 ==比較時結果都是true。 2.Integer a=n時,如果n大於等於-128小於等於127時,會直接從IntegerCache中取,不在這個範圍內,會new一個對象,所以Integer與new Integer進行 ==比較時,結果都是false。 3.Integer與Integer比較,需要看範圍,如果在-128~127(包含-128,不包含127)範圍內,因爲都是從IntegerCache中取值,所以相等;若不在這個範圍內,則都要去new一個對象,所以結果爲false。 關於D選項,我想單獨回答一下: D選項我認爲是錯誤的,a==b結果雖然結果是true,但是要注意的是,這是一個int與Integer的比較,Integer會進行拆箱,拆箱的結果是int型的,這就相當於兩個int型之間的比較,而基本數據類型之間的比較,比較的是數值,所以結果是true,但並不表示兩者的內存地址相等。個人看法,如有錯誤,歡迎指出。
-
在大數據量場景下,以下哪種js中字符串連接方式較爲高效( )
正確答案: C 你的答案: B C D (錯誤)
a+=b a = a+b Array.join() Array.push() 解釋: +的處理機制是:新建一個臨時字符串,將新字符串賦值爲a+b,然後返回這個臨新字符串並同時銷燬原始字符串,所以字符串連接效率較低。所以用Array.join()不會新建臨時字符串效率更高。 (當然以上效率問題僅存在於低版本瀏覽器ie7-及以下,現在的新瀏覽器基本上都解決了這個問題,效率差不多) 所以在面試時遇到這種題時告訴面試官分兩種情況: 舊瀏覽器(ie7-)下用join()會高效,而新版本瀏覽器下除了做變量緩存外不需要做別的優化。這樣可以側面表達對劉拉你兼容有所瞭解。