java面試綜合面試題_第1頁(yè)
java面試綜合面試題_第2頁(yè)
java面試綜合面試題_第3頁(yè)
java面試綜合面試題_第4頁(yè)
java面試綜合面試題_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1、作用域public,private,protected,以及不寫時(shí)的區(qū)別答:區(qū)別如下:作用域 當(dāng)前類 同一package 子孫類 其他package public protected friendly private 不寫時(shí)默認(rèn)為friendly2、ArrayList 和Vector 的區(qū)別,HashMap 和Hashtable 的區(qū)別答:就ArrayList 與Vector 主要從二方面來(lái)說.一.同步性:Vector 是線程安全的,也就是說是同步的,而 ArrayList 是線程序不安全的,不是同步的二.數(shù)據(jù)增長(zhǎng):當(dāng)需要增長(zhǎng)時(shí),Vector 默認(rèn)增長(zhǎng)為原來(lái)一培,而 ArrayList 卻

2、是原來(lái)的一半就HashMap 與HashTable 主要從面來(lái)說。一.歷史原因:Hashtable 是基于陳舊的Dictionary 類的,HashMap 是Java 1.2 引進(jìn)的Map 接口的一個(gè)實(shí)現(xiàn)二.同步性:Hashtable 是線程安全的,也就是說是同步的,而 HashMap 是線程序不安全的,不是同步的三.值:只有HashMap 可以讓你將空值作為一個(gè)表的條目的key 或value 3、char 型變量中能不能存貯一個(gè)中文漢字?為什么?答:是能夠定義成為一個(gè)中文的,因?yàn)?java 中以 unicode 編碼,一個(gè) char 占 16 個(gè)字節(jié),所以放一個(gè)中文是沒問題的4、多線程有幾種

3、實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么?答:多線程有兩種實(shí)現(xiàn)方法,分別是繼承Thread 類與實(shí)現(xiàn)Runnable 接口同步的實(shí)現(xiàn)方面有兩種,分別是synchronized,wait 與notify5、繼承時(shí)候類的執(zhí)行順序問題,將會(huì)打印出什么?答:父類:package test;public class FatherClasspublic FatherClass()System.out.pr子類: package test;ln(FatherClass Create);import test.FatherClass;public class ChildClass extends Fa

4、therClasspublic ChildClass()System.out.prln(ChildClass Create);public sic void main(String args)FatherClass fc = new FatherClass(); ChildClass cc = new ChildClass();輸出結(jié)果:C:java test.ChildClass FatherClass Create FatherClass Create ChildClass Create6、類的實(shí)現(xiàn)方式?答:示例代碼如下:package test;public class OuterCla

5、ssprivate classerClasspublicerClass()System.out.prln(erClass Create);public OuterClass()erClass ic = newerClass();System.out.prln(OuterClass Create);public sic void main(String args)OuterClass oc = new OuterClass();輸出結(jié)果:C:java test/OuterClass erClass CreateOuterClass Create再一個(gè)例題:public class OuterCl

6、ass private double d1 = 1.0;/insert code hereYou need to insert an inner class declarationine 3. Which two inner classdeclarations are valid?(Choose two.)A. class InnerOnepublic sic double methoda() return d1;B. public class InnerOnesic double methoda() return d1;C. private class InnerOne double met

7、hoda() return d1;D. sic class InnerOneprotected double methoda() return d1;E. abstract class InnerOne public abstract double methoda();說明如下:一.靜態(tài)二.靜態(tài)故 A、B 錯(cuò)外部類的非靜態(tài)類可以有靜態(tài)成員,而非靜態(tài)類則不能有靜態(tài)成員。類的非靜態(tài)成員可以外部類的靜態(tài)變量,而不可變量;return d1 出錯(cuò)。故 D 錯(cuò)三.非靜態(tài)外部類的非靜態(tài)變量。 故 C 正確類的非靜態(tài)成員可以四.為C、E7、float 型float f=3.4 是否正確?答:不正確。精度確,

8、應(yīng)該用強(qiáng)制類型轉(zhuǎn)換,如下所示:float f=(float)3.48、介紹JAVA 中的Collection FrameWork?答:Collection FrameWork 如下: CollectionListLinkedListArrayListVector StackSet MapHashtableHashMapWeakHashMapCollection 是最基本的集合接口,一個(gè) Collection 代表一組 Object,即 Collection的元素(Elements)Map 提供key 到value 的9、Java 中異常處理機(jī)制,事件機(jī)制?10、JAVA 中的多形與繼承?11、

9、抽象類與接口?答:抽象類與接口都用于抽象,但是抽象類(JAVA 中)可以有自己的部分實(shí)現(xiàn),而接口則完全是一個(gè)標(biāo)識(shí)(同時(shí)有多重繼承的功能)。14、用 JAVA 實(shí)現(xiàn)一種排序,JAVA 類實(shí)現(xiàn)序列化的方法(二種)? 如在COLLECTION框架中,實(shí)現(xiàn)比較要實(shí)現(xiàn)什么樣的接口?答:用法進(jìn)行排序代碼如下package test; import java.util.*; class InsertSortArrayList al; public InsertSort(num,mod)al = new ArrayList(num); Random rand = new Random();System.out

10、.prln(The ArrayList Sort Before:);for (i=0;inum ;i+ )al.add(new System.out.preger(Mabs(rand.next() % mod + 1);ln(al+i+=+al.get(i);public void SortIt()eger temp MaxSize=1;for(i=1;i=(eger)al.get(MaxSize-1).Value()al.add(MaxSize,temp MaxSize+;);System.out.pr else ln(al.toString();for (j=0;j=temp.Value(

11、)al.add(j,temp MaxSize+; System.out.pr);ln(al.toString();break;System.out.prln(The ArrayList Sort After:);for(i=0;ial.size();i+)System.out.prln(al+i+=+al.get(i);public sic void main(String args)InsertSort is = new InsertSort(10,100); is.SortIt();JAVA 類實(shí)現(xiàn)序例化的方法是實(shí)現(xiàn)java.io.Serializable 接口Collection 框架中

12、實(shí)現(xiàn)比較要實(shí)現(xiàn)Comparable 接口和 Comparator 接口12、STRING 與 STRINGBUFFER 的區(qū)別。答:STRING 的長(zhǎng)度是不可變的,STRINGBUFFER 的長(zhǎng)度是可變的。如果你對(duì)字符串中的內(nèi)容經(jīng)常進(jìn)行操作,特別是內(nèi)容要修改時(shí),那么使用 StringBuffer,如果最后需要String,那么使用StringBuffer 的toString()方法Jsp 方面13、jsp 有哪些內(nèi)置對(duì)象?作用分別是什么?答:JSP 共有以下 9 種基本內(nèi)置組件(可與 ASP 的 6 種組件相對(duì)應(yīng)):request 用戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/ response 網(wǎng)頁(yè)傳

13、回用戶端的回應(yīng)pageContext 網(wǎng)頁(yè)的屬性是在這里管理T 請(qǐng)求的參數(shù)ses與請(qǐng)求有關(guān)的會(huì)話期application servlet 正在執(zhí)行的內(nèi)容out 用來(lái)傳送回應(yīng)的輸出 config servlet 的構(gòu)架 page JSP 網(wǎng)頁(yè)本身exception 針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外 14、jsp 有哪些動(dòng)作?作用分別是什么? 答:JSP 共有以下 6 種基本動(dòng)作jsp:include:在頁(yè)面被請(qǐng)求的時(shí)候引入一個(gè)文件。 jsp:useBean:尋找或者實(shí)例化一個(gè)JavaBean。 jsp:setProperty:設(shè)置JavaBean 的屬性。 jsp:getProperty:輸出某個(gè)Ja

14、vaBean 的屬性。 jsp:forward:把請(qǐng)求轉(zhuǎn)到一個(gè)新的頁(yè)面。jsp:plugin:根據(jù)瀏覽器類型為Java 插件生成OBJECT 或EMBED 標(biāo)記15、JSP 中動(dòng)態(tài)INCLUDE 與靜態(tài)INCLUDE 的區(qū)別?答:動(dòng)態(tài)INCLUDE 用jsp:include 動(dòng)作實(shí)現(xiàn)它總是會(huì)檢查所含文件中的變化,適合用于包含動(dòng)態(tài)頁(yè)面,并且可以帶參數(shù)靜態(tài) INCLUDE 用 include 偽碼實(shí)現(xiàn),定不會(huì)檢查所含文件的變化,適用于包含靜態(tài)頁(yè)面16、兩種跳轉(zhuǎn)方式分別是什么?答:有兩種,分別為:區(qū)別?前者頁(yè)面不會(huì)轉(zhuǎn)向include 所指的頁(yè)面,只是顯示該頁(yè)的結(jié)果,主頁(yè)面還是原來(lái)的頁(yè)面。執(zhí)行完后還會(huì)

15、回來(lái),相當(dāng)于函數(shù)調(diào)用。并且可以帶參數(shù).后者完全轉(zhuǎn)向新頁(yè)面,不會(huì)再回來(lái)。相當(dāng)于go to 語(yǔ)句。Servlet 方面17、說一說Servlet 的生命周期?答:servlet 有良好的生存期的定義,包括加載和實(shí)例化、初始化、處理請(qǐng)求以及服務(wù)結(jié)束。這個(gè)生存期由javax.servlet.Servlet 接口的init,service 和destroy 方法表達(dá)。18、JAVA SERVLET API 中forward() 與redirect()的區(qū)別?答:前者僅是容器中控制權(quán)的轉(zhuǎn)向,在客戶端瀏覽器地址欄中不會(huì)顯示出轉(zhuǎn)向后的地址;后者則是完全的跳轉(zhuǎn),瀏覽器將會(huì)得到跳轉(zhuǎn)的地址,并重新發(fā)送請(qǐng)求。這樣,從

16、瀏者可以滿足需。在有些情況下,覽器的地址欄中可以看到跳轉(zhuǎn)后的地址。所以,前者更加高效,要時(shí),盡量使用 forward()方法,并且,這樣也有助于隱藏實(shí)際的比如,需要跳轉(zhuǎn)到一個(gè)其它服務(wù)器上的資源,則必須使用 sendRedirect()方法。 19、Servlet 的基本架構(gòu)public class ServletName extends HttpServlet publicvoiddot(HttpServletRequestrequest,HttpServletResponseresponse) throws ServletException, IOException publicvoiddo

17、Get(HttpServletRequestrequest,HttpServletResponseresponse) throws ServletException, IOException Jdbc、Jdo 方面20、可能會(huì)讓你寫一段 Jdbc 連Oracle 的程序,并實(shí)現(xiàn)數(shù)據(jù)查詢.答:程序如下:packageo.ant;import java.sql.*; public class jdbcString dbUrl=jdbc:oracle:thin:1521:orcl; String theUser=admin;String thePw=manager; Connection c=nul

18、l;Sement conn;ResultSet rs=null; public jdbc()try Class.forName(oracle.jdbc.driver.OracleDriver).newInstance(); c = DriverManager.getConnection(dbUrl,theUser,thePw);conn=c.createSement();catch(Exception e)e.prpublictryStackTrace();executeUpdate(String sql)conn.executeUpdate(sql); return true;catch (

19、SQLException e)e.prStackTrace();return false;public ResultSet executeQuery(String sql)rs=null; tryrs=conn.executeQuery(sql);catch (SQLException e)e.prStackTrace();return rs;public void close()tryconn.close();c.close();catch (Exception e)e.prStackTrace();public sic void main(String args)ResultSet rs;

20、jdbc conn = new jdbc(); rs=conn.executeQuery(select * from test); trywhile (rs.next()System.out.pr System.out.prln(rs.getString(id);ln(rs.getString(name);catch(Exception e)e.prStackTrace();21、Class.forName 的作用?為什么要用?答:調(diào)用該返回一個(gè)以字符串指定類名的類的對(duì)象。22、Jdo 是什么?答:JDO 是Java 對(duì)象持久化的新的規(guī)范,為java data object 的簡(jiǎn)稱,也是一個(gè)用

21、于存取某種數(shù)據(jù)倉(cāng)庫(kù)中的對(duì)象的標(biāo)準(zhǔn)化API。JDO 提供了透明的對(duì)象,因此對(duì)開發(fā)人員來(lái)說,數(shù)據(jù)對(duì)象完全不需要額外的代碼(如JDBC API 的使用)。這些繁瑣的例行工作已經(jīng)轉(zhuǎn)移到 JDO 產(chǎn)品提供商身上,使開發(fā)解脫出來(lái),從而集中時(shí)間和精力在業(yè)務(wù)邏輯上。另外,JDO 很靈活,因?yàn)樗梢栽谌魏螖?shù)據(jù)底層上運(yùn)行。JDBC 只是面向關(guān)系數(shù)據(jù)庫(kù)(RDBMS)JDO 更通用,提供到任何數(shù)據(jù)底層的功能,比如關(guān)系數(shù)據(jù)庫(kù)、文件、XML 以及對(duì)象數(shù)據(jù)庫(kù)(ODBMS)等等,使得應(yīng)用可移植性更強(qiáng)。EJB 方面23、EJB2.0 有哪些內(nèi)容?分別用在什么場(chǎng)合? EJB2.0 和EJB1.1 的區(qū)別?答:規(guī)范內(nèi)容包括Bean

22、 提供者,應(yīng)用程序裝配者,EJB 容器,EJB 配置工具,EJB 服務(wù)提供者,系統(tǒng)管理員。這里面,EJB 容器是 EJB 之所以能夠運(yùn)行的管理著 EJB 的創(chuàng)建,撤消,激活,去活,與數(shù)據(jù)庫(kù)的連接等等重要的JSP,Servlet,EJB,JNDI,JDBC,JMS24、EJB 與JAVA BEAN 的區(qū)別?。EJB 容器工作。答:Java Bean 是可復(fù)用的組件,對(duì)Java Bean 并沒有嚴(yán)格的規(guī)范,理論上講,任何一個(gè)Java 類都可以是一個(gè)Bean。但通常情況下,由于 Java Bean 是被容器所創(chuàng)建(如Tomcat)的,所以 Java Bean 應(yīng)具有一個(gè)無(wú)參的構(gòu)造器,另外,通常Jav

23、a Bean 還要實(shí)現(xiàn) Serializable 接口用于實(shí)現(xiàn) Bean 的持久性。Java Bean 實(shí)際上相當(dāng)于微軟COM 模型中的本地進(jìn)程內(nèi) COM 組件,它是不能被跨進(jìn)程的。Entrise JavaBean 相當(dāng)于DCOM,即分布式組件。它是基于 Java 的方法調(diào)用(RMI)技術(shù)的,所以EJB 可以被跨進(jìn)程、跨計(jì)算機(jī))。但 EJB 必須被布署在諸如Webspere、WebLogic 這樣的容器中,EJB 客戶從不直接真正的 EJB 組件,而是通過其容器。EJB 容器是 EJB 組件的真正的EJB 組件。25、EJB 的基本架構(gòu)答:一個(gè)EJB 包括三個(gè)部分:,EJB 組件由容器所創(chuàng)建和

24、管理??蛻敉ㄟ^容器來(lái)Remoteerface 接口的代碼package Beans;import javax.ejb.EJBObject; import java.rmi.RemoteException;publicerface Add extends EJBObject/some method declareHomeerface 接口的代碼package Beans;import java.rmi.RemoteException; import jaax.ejb.CreateException; import javax.ejb.EJBHome;publicerface AddHome ex

25、tends EJBHome/some method declareEJB 類的代碼package Beans;import java.rmi.RemoteException;import javax.ejb.Ses import javx.ejb.SesBean; Context;public class AddBean Implements Ses/some method declareJ2EE,MVC 方面Bean26、MVC 的各個(gè)部分都有那些技術(shù)來(lái)實(shí)現(xiàn)?如何實(shí)現(xiàn)?答:MVC 是MViewController 的簡(jiǎn)寫。M 代表的是應(yīng)用的業(yè)務(wù)邏輯(通過 JavaBean,EJB 組件實(shí)現(xiàn))

26、, View 是應(yīng)用的表示面(由 JSP 頁(yè)面產(chǎn)生), Controller 是提供應(yīng)用的處理過程控制(一般是一個(gè) Servlet),通過這種設(shè)計(jì)模型把應(yīng)用邏輯,處理過程和顯示邏輯分成不同的組件實(shí)現(xiàn)。這些組件可以進(jìn)行交互和重用。 27、應(yīng)用服務(wù)器與WEB SERVER 的區(qū)別?希望大家補(bǔ)上,28、J2EE 是什么?答:Je22 是 Sun 公司多層(multi-diered),分布式(distributed),基于組件(component-base)的企業(yè)級(jí)應(yīng)用模型(entriese application m).在這樣的一個(gè)應(yīng)用系統(tǒng)中,可按照功能劃分為不同的組件,這些組件又可在不同計(jì)算機(jī)上,

27、并且處于相應(yīng)的層次(tier) 中。所屬層次包括客戶層(c件,Business 層和組件,企業(yè)信息系統(tǒng)(EIS)層。tn tier) 組件,web 層和組29、STRUTS 的應(yīng)用(如STRUTS 架構(gòu))答:Struts 是采用Java Servlet/JavaServages 技術(shù),開發(fā)Web 應(yīng)用程序的開放源碼的 framework。 采用 Struts 能開發(fā)出基于 MVC(M設(shè)計(jì)模式的應(yīng)用構(gòu)架。 Struts 有如下的主要功能:-View-Controller)一.包含一個(gè)controller servlet,能將用戶的請(qǐng)求發(fā)送到相應(yīng)的Action 對(duì)象。二.JSPtag 庫(kù),并且在

28、controller servlet 中提供關(guān)聯(lián)支持,幫助開發(fā)員創(chuàng)建交互式表單應(yīng)用。三. 提供了一系列實(shí)用對(duì)象: XML 處理、通過 Java reflection APIs 自動(dòng)處理JavaBeans 屬性、設(shè)計(jì)模式方面的提示和消息。30、開發(fā)中都用到了那些設(shè)計(jì)模式?用在什么場(chǎng)合?答:每個(gè)模式都描述了一個(gè)在的環(huán)境中不斷出現(xiàn),然后描述了該問題的解決方案的。通過這種方式,你可以無(wú)數(shù)次地使用那些已有的解決方案,無(wú)需在重復(fù)相同的工作。主要用到了MVC 的設(shè)計(jì)模式。用來(lái)開發(fā)JSP/Servlet 或者J2EE 的相關(guān)應(yīng)用。簡(jiǎn)單工廠模式等。31,談?wù)?final, finally, finalize 的

29、區(qū)別。final 用于屬性,方法和類,分別表示屬性不可變,方法不可覆蓋,類不可繼承。finally 是異常處理語(yǔ)句結(jié)構(gòu)的一部分,表示總是執(zhí)行。finalize 是 Object 類的一個(gè)方法,在收集器執(zhí)行的時(shí)候會(huì)調(diào)用被回收對(duì)象的此方法,可以覆蓋此方法提供收集時(shí)的其他資源回收,例如關(guān)閉文件等。32,Anonymous Inner Class (類) 是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))erface(接口)?可以繼承其他類或完成其他接口,在swing 編程中常用此方式。33,S很籠統(tǒng))。ic Nested Class 和 Inner Class 的不同,說得越

30、多越好(面試題有的Sic Nested Class 是被為靜態(tài)(sic)的類,它可以不依賴于外部類實(shí)例被實(shí)例化。而通常的類需要在外部類實(shí)例化后才能實(shí)例化。34,&和&的區(qū)別。&是位運(yùn)算符,表示按位與運(yùn)算,&是邏輯運(yùn)算符,表示邏輯與(and).35,HashMap 和Hashtable 的區(qū)別。HashMap 是Hashtable 的輕量級(jí)實(shí)現(xiàn)(非線程安全的實(shí)現(xiàn)),他們都完成了Map 接口,主要區(qū)別在于HashMap 允許空(null)鍵值(key),由于非線程安全,效率上可能高于Hashtable.36,Collection 和 Collections 的區(qū)別。Collection 是集合類的

31、接口,繼承與他的接口主要有Set 和List.Collections 是針對(duì)集合類的一個(gè)幫助類,他提供一系列靜態(tài)方法實(shí)現(xiàn)對(duì)各種集合的搜索、排序、線程安全化等操作。37,什么時(shí)候用 assert。1.4 新增關(guān)鍵字(語(yǔ)法),用于測(cè)試表達(dá)式狀態(tài),可用于調(diào)試程序。使用方法 assert ,表示如果表達(dá)式為真(true),則下面的語(yǔ)句執(zhí)行,否則拋出AssertionError。另外的使用方式assert :,表示如果表達(dá)式為真,后面的表達(dá)式忽略,否則后面表達(dá)式的值用于AssertionError 的構(gòu)建參數(shù)。注意編譯時(shí)要增加-source 1.4 參數(shù),否則報(bào)錯(cuò)。運(yùn)行時(shí)要增加 ea 參數(shù),否則asse

32、rt 行被忽略38,GC 是什么? 為什么要有GC?GC 是收集的意思(Gabage Collection),內(nèi)存處理是編程容易出現(xiàn)問題,Java 提供的的地方,忘記或者錯(cuò)誤的內(nèi)存回收會(huì)導(dǎo)致程序或系統(tǒng)的不穩(wěn)定甚至GC 功能可以自動(dòng)監(jiān)測(cè)對(duì)象是否超過作用域從而達(dá)到自動(dòng)回收內(nèi)存的目的,Java 語(yǔ)言沒有提供已分配內(nèi)存的顯示操作方法。39,String s = new String(xyz);創(chuàng)建了幾個(gè)String Object?兩個(gè)40,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?Math.round(11.5)=12 Math.round(-11.5)=

33、-11round 方法返回與參數(shù)最接近的長(zhǎng)整數(shù),參數(shù)加 1/2 后求其floor.41,short s1 = 1; s1 = s1 + 1;錯(cuò)? short s1 = 1; s1 += 1;錯(cuò)?short s1 = 1; s1 = s1 + 1; (s1+1 運(yùn)算結(jié)果是short s1 = 1; s1 += 1;(可以正確編譯)型,需要強(qiáng)制轉(zhuǎn)換類型)42,sleep() 和 wait()區(qū)別?sleep 是線程類(Thread)的方法,導(dǎo)致此線程暫停執(zhí)行指定時(shí)間,給執(zhí)行機(jī)會(huì)給其他線程,但是狀態(tài)依然保持,到時(shí)后會(huì)自動(dòng)恢復(fù)。調(diào)用 sleep 不會(huì)對(duì)象鎖。wait 是 Object 類的方法,對(duì)此對(duì)

34、象調(diào)用 wait 方法導(dǎo)致本線程放棄對(duì)象鎖,進(jìn)入等待此對(duì)象的等待鎖定池,只有針對(duì)此對(duì)象發(fā)出 notify 方法(或 notifyAll)后本線程才進(jìn)入對(duì)象鎖定池準(zhǔn)備獲得對(duì)象鎖進(jìn)入運(yùn)行狀態(tài)。43,Java 有沒有g(shù)oto?沒有44,數(shù)組有沒有 length()這個(gè)方法? String 有沒有l(wèi)ength()這個(gè)方法?數(shù)組沒有l(wèi)ength()這個(gè)方法,有l(wèi)ength 的屬性。String 有有l(wèi)ength()這個(gè)方法。45,Overload 和Override 的區(qū)別。Overloaded 的方法是否可以改變返回值的類型?方法的重寫 Overriding 和重載 Overloading 是 Jav

35、a 多態(tài)性的不同表現(xiàn)。重寫Overriding 是父類與子類之間多態(tài)性的一種表現(xiàn),重載 Overloading 是一個(gè)類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),說該方法被重寫 (Overriding)。子類的對(duì)象使用這個(gè)方法時(shí),將調(diào)用子類中的定義,對(duì)它而言,父類中的定義如同被“”了。如果在一個(gè)類中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。46,Set 里的元素是不能重復(fù)的,那么用什么方法來(lái)區(qū)分重復(fù)與否呢? 是用=還是equals()? 它們有何區(qū)別?

36、Set 里的元素是不能重復(fù)的,那么用 iterator()方法來(lái)區(qū)分重復(fù)與否。equals()是判讀兩個(gè)Set 是否相等。equals()和=方法決定值是否指向同一對(duì)象equals()在類中被覆蓋,為的是當(dāng)兩個(gè)分離的對(duì)象的內(nèi)容和類型相配的話,返回真值。47,給我一個(gè)你最常見到的 runtime exception。ArithmeticException,ArrayStoreException,BufferOverflowException,BufferUnderflowException, CannotRedoException, CannotUndoException,ClassCastEx

37、ception, DOMException,CMMException,ConcurrentModificationException,EmptyStackException,IllegalArgumentException,IllegalMonitorSeException,IllegalPathSeException,IllegalSeException,ImagingOpException, MissingResourceException, NoSuchElementException,IndexOutOfBoundsException, NegativeArraySizeExcepti

38、on,NullPoerException,ProfileDataException, SecurityException,ProviderException, SystemException,RasterFormatException,UndeclaredThrowableException,UnmodifiableSetException, UnsupportedOperationException48,error 和exceptionerror 表示恢復(fù)不是不可能但很能指望程序能處理這樣的情況。區(qū)別?的情況下的一種嚴(yán)重問題。比如說內(nèi)存溢出。不可exception 表示一種設(shè)計(jì)或?qū)崿F(xiàn)問題。也

39、就是說,它表示如果程序運(yùn)行正常,從不會(huì)發(fā)生的情況。49,List, Set, Map 是否繼承自Collection 接口? List,Set 是Map 不是50,abstract class 和erface區(qū)別?方法的存在而不去實(shí)現(xiàn)它的類被叫做抽象類(abstract class),它用于要?jiǎng)?chuàng)建一現(xiàn)某些基本行為的類,并為該類方法,但不能在該類中實(shí)現(xiàn)該類的情況。不能創(chuàng)建abstract 類的實(shí)例。然而可以創(chuàng)建一個(gè)變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法。Abstract 類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否則它們也是抽象類為。取而代之,

40、在子類中實(shí)現(xiàn)該方法。知道其行為的其它類可以在類中實(shí)現(xiàn)這些方法。接口(erface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實(shí)現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個(gè)有程序體。接口只可以定義sic final 成員變量。接口的實(shí)現(xiàn)與子類相似,除了該實(shí)現(xiàn)類不能從接口定義中繼承行為。當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現(xiàn)了該接口的類的任何對(duì)象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為變量的類型。通常的動(dòng)態(tài)聯(lián)編將生效。可以轉(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanceof 運(yùn)算符可以用來(lái)決定某對(duì)象的類是否實(shí)現(xiàn)了

41、接口。51,abstract 的 method 是否可同時(shí)是 s synchronized?都不能ic,是否可同時(shí)是 native,是否可同時(shí)是52,接口是否可繼承接口? 抽象類是否可實(shí)現(xiàn)(implements)接口? 抽象類是否可繼承實(shí)體類(concrete class)?接口可以繼承接口。抽象類可以實(shí)現(xiàn)(implements)接口,抽象類是否可繼承實(shí)體類,但前提是實(shí)體類必須有明確的構(gòu)造函數(shù)。53,啟動(dòng)一個(gè)線程是用 run()還是start()?啟動(dòng)一個(gè)線程是調(diào)用 start()方法,使線程所代表的虛擬處理機(jī)處于可運(yùn)行狀態(tài),這意味著它可以由JVM 調(diào)度并執(zhí)行。這并不意味著線程就會(huì)立即運(yùn)行。r

42、un()方法可以產(chǎn)生必須退出的標(biāo)志來(lái)停止一個(gè)線程。54,構(gòu)造器 Constructor 是否可被override?構(gòu)造器 Constructor 不能被繼承,因此不能重寫 Overriding ,但可以被重載Overloading。55,是否可以繼承 String 類? String 類是final 類故不可以繼承。56,當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè) synchronized 方法后,其它線程是否可進(jìn)入此對(duì)象的其它方法?不能,一個(gè)對(duì)象的一個(gè)synchronized 方法只能由一個(gè)線程。57,try 里有一個(gè)return 語(yǔ)句,那么緊跟在這個(gè)try 后的finally 里的code 會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return 前還是后?會(huì)執(zhí)行,在return 前執(zhí)行。58,編程題:

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論