已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
一、簡答題2、Java程序是由什么組成的?Java 源文件的命名規(guī)則是怎樣的?答:一個Java 程序是由若干個類組成的。但只能有一個類是public 類。Java源文件命名規(guī)則是:源文件名必須與其中的public 類的名字相同,擴展名是java;如果源文件中沒有public 類,那么源文件的名字只要和某個類的名字相同,并且擴展名是java就可以了。3、Java語言與Java技術(shù)的關(guān)系如何?Java語言包括哪兩部分? 答:Java語言是Java技術(shù)的基礎(chǔ)。Java語言包括語法規(guī)則和Java類庫兩部分。4、開發(fā)與運行Java程序需要經(jīng)過哪些主要過程? 答:源程序編輯、字節(jié)碼編譯和解釋運行。5、為什么一個Java文件編譯后可以獲得多個字節(jié)碼文件?答:這是因為一個源文件中可有多個類,文件經(jīng)過編譯后,每個類就生成一個字節(jié)碼文件(擴展名為class)。7、面向?qū)ο蟮拈_發(fā)方法與傳統(tǒng)的面向過程的開發(fā)方法有什么不同?答:傳統(tǒng)的面向過程的開發(fā)方法是把現(xiàn)實世界的問題轉(zhuǎn)化成計算機邏輯, 而面向?qū)ο蠹夹g(shù)是計算機邏輯來模擬現(xiàn)實世界的問題。8、 什么是對象、類和實體?它們之間的關(guān)系如何? 試述下面的說法映射到面向?qū)ο蟮挠嬎銠C邏輯中分別對應(yīng)什么概念。(1)計算機92班 (2)計算機92班的同學(xué)劉利 (3)大學(xué)生 (4)X大學(xué)的大學(xué)生 (5)班級答:對象是現(xiàn)實世界中某個具體的物理實體在計算機邏輯中的映射和體現(xiàn); 類是同種對象的集合與抽象。(1)班級類的對象 (2)大學(xué)生類的對象 (3)大學(xué)生類 (4)大學(xué)生類的子類 (5)班級類9、對象有哪些屬性?在計算機邏輯中如何描述這些屬性?答:對象有狀態(tài)、行為、標(biāo)志三個屬性; 在計算機邏輯中分別用對象的變量、方法和對象名來描述這三個屬性。10、面向?qū)ο蟮拈_發(fā)包括哪些過程?答:面向?qū)ο蟮姆治?OOA)、面向?qū)ο蟮脑O(shè)計(OOD)、面向?qū)ο蟮拈_發(fā)(OOP)、面向?qū)ο蟮木S護(hù)。11、面向?qū)ο蟪绦蛟O(shè)計方法有哪幾個最重要的特點?答:抽象、封裝、繼承、多態(tài)。12、什么是父類(超類)?什么是子類?父類、子類間屬性有何關(guān)系?答:當(dāng)兩個類具有繼承關(guān)系時,被繼承的類稱為父類或超類;繼承了父類或超類的所有數(shù)據(jù)和操作的類稱為子類。父類是所有子類的公共屬性的集合,而每一個子類則是父類的特殊化,是在公共屬性的基礎(chǔ)上的功能、內(nèi)涵的擴展和延伸。 13、什么是封裝? 答:封裝就是指利用抽象數(shù)據(jù)類型將數(shù)據(jù)和基于數(shù)據(jù)的操作封裝在一起,數(shù)據(jù)被保護(hù)在抽象數(shù)據(jù)類型的內(nèi)部,系統(tǒng)的其它部分只有通過包裹在數(shù)據(jù)外面的被授權(quán)的操作,才能夠與這個抽象數(shù)據(jù)類型交流和交互。14、使用繼承有什么好處?什么是單重繼承?什么是多重繼承?Java采用的是單重繼承還是多重繼承? 答:使用繼承的主要好處是使得程序結(jié)構(gòu)清晰,降低了編碼和維護(hù)的工作量。只有一個單一父類稱為單重繼承。一個類可以有一個以上的父類稱為多重繼承。Java采用的是單重繼承。15、什么是多態(tài)?實現(xiàn)多態(tài)有哪些方式? 答:一個程序中同名的不同方法共存的情況稱為多態(tài)。實現(xiàn)多態(tài)的方式有覆蓋和重載。16、什么是覆蓋多態(tài)?什么是重載多態(tài)?覆蓋多態(tài)和重載多態(tài)分別如何區(qū)分不同的同名方法? 答:子類對繼承自父類的方法的重新定義就稱為方法的覆蓋,這種多態(tài)稱為覆蓋多態(tài);類對自身已有的同名方法的重新定義稱為重載,這種多態(tài)稱為重載多態(tài)。覆蓋多態(tài)以對象名或類名為前綴來區(qū)分不同的同名方法;而重載多態(tài)則是使用不同的參數(shù)列表來區(qū)分不同的同名方法。17、類及類成員的訪問控制符有哪些?答:類成員:public,protected,friendly(default),private類:public,final,abstract,protected(不加任何說明的缺省值)18、構(gòu)造函數(shù)特殊在哪里?構(gòu)造函數(shù)什么時候執(zhí)行?被誰調(diào)用?答:構(gòu)造函數(shù)的特殊性在于它既可以從父類那里繼承,也可以相互重載。 構(gòu)造函數(shù)在創(chuàng)建新對象時執(zhí)行,由系統(tǒng)自動調(diào)用。21、關(guān)鍵字static可以修飾哪些類的組成部分? 答:可以修飾屬性、方法、靜態(tài)初始化器。22、什么是靜態(tài)初始化器?靜態(tài)初始化器與構(gòu)造函數(shù)有什么不同?答:靜態(tài)初始化器是由關(guān)鍵字static引導(dǎo)的一對大括號括起的語句組,其作用與類的構(gòu)造函數(shù)有些相似, p都是用來完成初始化的工作,但靜態(tài)初始化器在三點上與構(gòu)造函數(shù)有根本的不同:(1) 構(gòu)造函數(shù)是對每個新創(chuàng)建的對象初始化, 而靜態(tài)初始化塊是對類自身進(jìn)行初始化,只在類的第一個對象創(chuàng)建之前執(zhí)行一次。(2)構(gòu)造函數(shù)是在用new運算符產(chǎn)生新對象時由系統(tǒng)自動執(zhí)行, 而靜態(tài)初始化塊則是在它所屬的類加載入內(nèi)存時由系統(tǒng)調(diào)用執(zhí)行。(3)不同于構(gòu)造函數(shù),靜態(tài)初始化塊不是方法,沒有方法名、返回值和參數(shù)列表。23、靜態(tài)屬性有什么特點?類對象可以訪問或修改靜態(tài)屬性嗎?答:靜態(tài)屬性是類的屬性,不專屬于某個方法,類對象可以訪問或修改靜態(tài)屬性。24、設(shè)某程序創(chuàng)建了類MyClassl的兩個對象,試寫出靜態(tài)初始化器和構(gòu)造函數(shù)執(zhí)行的前后次序與次數(shù)。 答:先執(zhí)行類MyClassl的靜態(tài)初始化器一次,再執(zhí)行構(gòu)造函數(shù)兩次。25、抽象方法有什么特點?抽象方法的方法體在何處定義? 答:抽象方法的特點是用abstract修飾符修飾,只有方法頭沒有具體的方法體。抽象方法在定義該方法的抽象類的非抽象子類中定義。26、final修飾符可以用來修飾什么?被final修飾符修飾后有何特點?答:final修飾符可用來修飾類、屬性、方法和終結(jié)器。 被final修飾符修飾的類沒有子類。被final修飾符修飾的屬性在程序整個執(zhí)行過程中都不能改變。被final修飾符修飾的方法是功能和內(nèi)部語句不能更改的最終方法。被final修飾符修飾的終結(jié)器(以稱析構(gòu)器finalize()方法,是在對象被刪除前進(jìn)行收尾工作的方法)也是不能更改的。27、哪些修飾符不能組合使用? 答:abstract與final(課本P62,final方法可以被繼承但是不能被修改,但被final修飾符修飾的類沒有子類),abstract與private,abstract與static,構(gòu)造函數(shù)不能是靜態(tài)的,因為構(gòu)造函數(shù)是創(chuàng)建對象時自動調(diào)用。28、書寫語句完成下面的功能。(1)定義一個類,其名稱為MyClass,類體為空,它可以被所有的其他類訪問。 (2)將對象Objectl的屬性fieldl在屏幕上顯示出來。答:(1)public class MyClass (2)System.out.print(Object1.field1);29、書寫語句完成下面的功能。 ()調(diào)用對象Objectl的方法methodl,把返回值賦值給變量Hold。 ()定義一個整型屬性Mine,使得只有這個類本身可以訪問它。 答:(1) Hold=Object1.method1(); (2) private int Mine;30、書寫語句完成下面的功能。(1)為類Classl定義一個整型變量field2,使得所有其他類都可以訪問它。(2)定義一個無形式參數(shù)無返回值的方法method2,使得使用類名Classl作前綴就可以調(diào)用它。答:(1) public class Class1public int field2; (2) static void method2() 類的靜態(tài)方法31、書寫語句完成下面的功能。 (1)為類Class2編寫構(gòu)造函數(shù)的方法頭,該構(gòu)造函數(shù)不接受形式參數(shù)。 (2)為類Class2編寫構(gòu)造函數(shù)的方法頭,該構(gòu)造函數(shù)接受兩個整型形式參數(shù)。 答:(1) Class2() (2) Class2(int c1,int c2)32、書寫語句完成下面的功能。()創(chuàng)建類Classl的一個對象Objectl,定義這個類的一個引用Refl,把對象Objectl的引用賦給Ref1。(2)為類Classl創(chuàng)建一個靜態(tài)整型變量s_data。答:(1) Class1 Object1=new Class1();左邊創(chuàng)建了一個對象 Class1 Ref1=Object1; 右邊創(chuàng)建了一個引用 (2) static int s_data;33、Java中如何定義繼承關(guān)系?寫出定義類庫中的類java.awt.Frame的子類MyFrame的類頭的語句。答:Java中是通過extends關(guān)鍵字定義繼承關(guān)系的,其語句的一般格式是: class 子類 extends 父類。 import java.awt.*; class MyFrame extends Frame34、設(shè)父類SuperClass中定義了公共整型屬性SuperProperty,SuperClass的子類SubClass中定義了公共整型屬性SubProperty,則屬性SubClass.SuperProperty是否存在?來自何處?答:存在,這個屬性是從其父類那里繼承來的。35、什么是多重繼承?Java是否支持多重繼承?Java采取什么機制來替代多重繼承? 答:一個子類有多個父類的情況稱為多重繼承,Java不支持多重繼承,Java用實現(xiàn)接口的方法替代多重繼承。36、什么是屬性(域)的隱藏?答:子類重新定義一個與從父類那里繼承來的屬性完全相同的屬性,稱為屬性的隱藏。37、一個類里是否可以有同名屬性共存的情況?是否最多只能有兩個同名的屬性。答:子類重新定義父類的同名屬性可以實現(xiàn)同名屬性共存,若此子類的同名屬性又被其子類所隱藏,可以有更多的同名屬性共存。38、一個類里有同名屬性共存的情況下,如何分別操縱這些同名的屬性?答:使用子類定義的方法將操縱子類定義的屬性;使用繼承自父類的方法將操縱父類定義的屬性。39、子類重新定義與父類方法的方法頭完全相同的方法,這種情況稱為什么?此時子類中還能找到父類原來的方法嗎? 答:這種情況稱為方法的覆蓋,此時,在子類中已不能找到父類原來的方法,它的內(nèi)存位置已經(jīng)被替代。40、同名的不同方法共存的情況稱為什么?如何區(qū)分這些同名方法?答:這種情況稱為方法的重載。不同類的同名方法用類名區(qū)分, 同類的同名方法用形式參數(shù)數(shù)目、順序和類型區(qū)分。41、Java中的多態(tài)有哪些方式?答:Java中的多態(tài)有兩種方式,第一種是子類對父類方法的覆蓋,第二種是同類中方法的重載。42、“重載中,兩個同名方法只要返回類型或參數(shù)列表不同即可互相分辨”這種說法是否正確?為什么?答:不正確,僅僅返回類型不同不能區(qū)分同名方法,必須參數(shù)列表不同。43、試解釋this和super兩個關(guān)鍵字,其中this指代的是一個類還是一個具體的對象?答:this表示的是當(dāng)前對象本身,即this代表了當(dāng)前對象的一個引用。super表示的是當(dāng)前對象的父類對象,是當(dāng)前對象的直接父類對象的引用。this指代的是一個具體對象。44、子類SubClass重新定義并覆蓋了父類SuperClass中的方法methodl(),如何使子類能夠調(diào)用父類原先定義的方法methodl()? 答:super.methodl();45、構(gòu)造函數(shù)可以繼承嗎?子類繼承父類的構(gòu)造函數(shù)應(yīng)遵循哪些原則? 答:子類可以繼承父類的構(gòu)造函數(shù),構(gòu)造函數(shù)的繼承原則有:(1)子類無條件地繼承父類的不含參數(shù)的構(gòu)造函數(shù);(2)如果子類自己沒有構(gòu)造函數(shù),則它將繼承父類的無參數(shù)構(gòu)造函數(shù)作為自己的構(gòu)造函數(shù),如果子類自己定義了構(gòu)造函數(shù),則在創(chuàng)建新對象時,它將先執(zhí)行繼承自父類的無參數(shù)構(gòu)造函數(shù),然后再執(zhí)行自己的構(gòu)造函數(shù)。 (3)對于父類的含參數(shù)的構(gòu)造函數(shù),子類可以通過在自己構(gòu)造函數(shù)中使用super關(guān)鍵字來調(diào)用它,但這個調(diào)用語句必須是子類構(gòu)造函數(shù)的第一個可執(zhí)行語句。46、一個構(gòu)造函數(shù)如何調(diào)用同類的其他構(gòu)造函數(shù)?如何調(diào)用父類的構(gòu)造函數(shù)? 答:在同類中使用this,調(diào)用父類的構(gòu)造函數(shù)使用super。47、什么是包?如何創(chuàng)建包?為什么要使用包?包物理地對應(yīng)什么?答:包是相關(guān)類的松散集合。使用package語句可以創(chuàng)建包。使用包可以方便相關(guān)的類共同工作,也方便其他包中的類引用它們。包物理地對應(yīng)文件夾,其中應(yīng)保存包中類的字節(jié)碼文件。48、試寫出一個語句創(chuàng)建一個名為MyPackage的包,這個語句應(yīng)該放在程序的什么位置?答:package MyPackage; 應(yīng)該在程序第一句。49、試寫出引用MyPackage中所有類的語句和引用MyPackage包中的一個類MyClassl。 答:引用MyPackage中所有類的語句是 import MyPackage.*;只能引入類 引用MyPackage包中的一個類MyClass的語句是import MyPackage.MyClassl;50、什么是接口?它起到什么作用?答:接口可看成是一種特殊的類,但接口不是類課本P61,是用來實現(xiàn)類間多重繼承功能的結(jié)構(gòu)。51、接口中包括什么?接口中的各成員的訪問控制符是一樣的嗎?是什么?答:接口中包括常量與抽象方法。接口中的屬性成員的訪問控制符都是public static final, 接口中的所有方法的訪問控制符都是public abstract,都是公共方法。52、創(chuàng)建接口使用什么關(guān)鍵字?接口可以有父接口嗎?試書寫語句創(chuàng)建一個名為MyInterface的接口,它是實現(xiàn)了MySuperInterfacel和MySuperInterface2兩個接口的子接口。答:創(chuàng)建接口使用interface關(guān)健字,一個類聲明實現(xiàn)實現(xiàn)接口在類頭處使用用implements關(guān)健字, 接口可以有父接口,用extends關(guān)健字實現(xiàn)繼承 課本P61。Interface MyInterface implements MySuperInterfacel,MySuperInterface254、實現(xiàn)接口的類是否必須覆蓋該接口的所有抽象方法?答:如果這個類是非抽象類的話,就必須覆蓋該接口的所有抽象方法。55、實現(xiàn)接口的抽象方法時,方法頭應(yīng)該與接口中定義的方法頭完全一致,但是有時需要增加一個public修飾符,為什么?答:接口的抽象方法的訪問限制符都己指定為public,所以類在實現(xiàn)方法時, 必須顯式地使用public修飾符,否則將被系統(tǒng)警告為縮小了接口中定義的方法的訪問控制范圍。56、程序中的錯誤分為哪兩類?分別應(yīng)如何排除? 答:編譯錯誤和運行錯誤。排除編譯錯誤可以借助于編譯器的錯誤提示, 排除運行錯誤要使用斷點、單步運行等用戶控制流程的調(diào)試手段。58、寫出三個常見的系統(tǒng)定義的異常,它們都是什么類的子類?答:三個常見的系統(tǒng)異常是InterruptedException,ClassNotFoundException ,IOException 。 它們都是Exception類的子類。59、用戶程序如何拋出自己的異常?系統(tǒng)定義的異常如何拋出?答:用戶程序使用throw關(guān)鍵字拋出異常。系統(tǒng)定義的異常由系統(tǒng)在合適的時刻自動拋出。62、閱讀下面的程序片段并回答問題。 class Classl int fieldl; private int field2; void methodl() System.out.println(“我是Classl的第一個方法”); void method2() System.out.pdntln(“我是Classl的第二個方法”); class Class2 extends Classl int fieldChildl; int fieldl; void methodChildl() System.out.pnntln(“我是Class2的第一個方法”); void methodl() System.out.println(“我是Class2的第二個方法”); (2)Classl有哪些方法和屬性?Class2有哪些方法和屬性?其中哪些與C1assl的方法和屬性有關(guān),是什么關(guān)系? 答:(2)Classl包括屬性fieldl和field2,方法methodl和method2;Class2包括自身定義的屬性fieldChildl和fieldl以及從父類繼承的屬性fieldl,方法包括Class2自身定義的methodChildl和methodl及其從父類繼承的method2。65、Java中最基礎(chǔ)的類庫是什么?誰是所有類的根類?做算術(shù)運算應(yīng)該使用什么類?答:Java中最基礎(chǔ)的類庫是java.lang;Object類是所有類的根類;做算術(shù)運算應(yīng)該使用Math類。67、為程序建立圖形用戶界面通常需要哪些步驟?答:(1)設(shè)計圖形用戶界面的層次組織; (2)設(shè)計并實現(xiàn)圖形用戶界面的外觀; (3)設(shè)計并實現(xiàn)圖形用戶界面的事件響應(yīng)。68、Java的圖形界面的容器共有幾種常用的布局管理策略?面板既是容器也是組件答:有五種常用的布局,它們是FlowLayout、BorderLayout、CardLayout、GridLayout、null69、對話框Dialog對象根據(jù)其性質(zhì)不同,可以劃分為哪兩種類型?缺省情況下創(chuàng)建的對話框?qū)儆谀姆N類型?答:可劃分為有模式對話框和無模式對話框兩種類型,缺省情況下創(chuàng)建的對話框是無模式的。70、有模式的對話框最突出的特點是什么?如果一個對話框的目的在于警告或提醒用戶(例如在用戶刪除某組件之前的確認(rèn)),這個對話框應(yīng)該是有模式的還是無模式的? 答:有模式對話框的特點是阻斷其父組件接受事件和消息的渠道。如果一個對話框的目的在于警告或提醒用戶,那么這個對話框應(yīng)該是有模式的。71、試述流的概念,最基本的輸入輸出流類是什么?答:流是指在計算機的輸入與輸出之間運動的數(shù)據(jù)的序列。 最基本的輸入輸也流類是InputStream和OutputStream72、寫出下面這些輸入輸出流類的輸入輸出操作的格式特點。 (1)InputStream和OutputStream (2)DataInputStream和DataOutputStream (3)FileInputStream和FileOutputStream (4)PrintStream(5)RandomAceessFile答:(1)一個字節(jié)一個字節(jié)地輸入輸出數(shù)據(jù)。 (2)按照不同的數(shù)據(jù)類型輸入輸出。 (3)同InputStream和OutputStream (4)把數(shù)據(jù)轉(zhuǎn)化成字符串輸出。 (5)同DataInputStream和DataOutputStream73、程序與磁盤文件交互數(shù)據(jù)之前應(yīng)該先完成什么操作?答:先建立與該文件交換數(shù)據(jù)的輸入輸出流對象。74、什么情況下創(chuàng)建FileInputStream對象可能引發(fā)IOException?答:在指定的文件不存在的情況下創(chuàng)建FileInputStream對象可能引發(fā)IOException。75、簡述程序、進(jìn)程和線程三個概念。線程有哪幾個基本的狀態(tài)?答:程序是一段靜態(tài)的代碼,它是應(yīng)用軟件執(zhí)行的藍(lán)本。 進(jìn)程是程序的一次動態(tài)執(zhí)行過程,它對應(yīng)了從代碼加載、執(zhí)行到執(zhí)行完畢的一個完整過程,這個過程也是進(jìn)程本身從產(chǎn)生、發(fā)展到消亡的過程。 線程是比進(jìn)程更小的執(zhí)行單位。一個進(jìn)程在其執(zhí)行過程中,可以產(chǎn)生多個線程,形成多條執(zhí)行線索。 線程有新建、就緒、運行、阻塞、死亡五個基本狀態(tài)。76、在程序中使用多線程可以用哪兩種基本方法?寫出Runnable接口所包含的方法答:可以使用派生Thread子類和實現(xiàn)Runnable接口。Runnable接口只有一個run()方法。77、哪些情況下一個活動的線程會終止?答:執(zhí)行其stop()方法或其run()方法運行完畢。78、敘述一種引起死鎖的情況。答:當(dāng)兩個或多個線程相互等待對方占據(jù)的同步資源時就會引起死鎖。二、單選題1、類變量的修飾符是static、類方法的修飾符是static2、使用super關(guān)鍵字調(diào)用父類的構(gòu)造方法時,super必須是子類構(gòu)造方法中的頭一條語句。4、判斷兩個字符串tom和jerry相等的表達(dá)式是tom.equals(jerry)5、TextField類的方法getText( )獲取文本的類型是(B) A、一個字符 B、字符串 C、int型數(shù)值 D、float型數(shù)值6、TextField類的一個構(gòu)造方法TextField(String s,int x),其中的參數(shù)x是指定(D) A、允許輸入字符的個數(shù) B、文本框內(nèi)的空格數(shù) C、參數(shù)s的長度 D、文本框的長度7、 按鈕按下的事件監(jiān)視器接口是ActionListener,ActionListener接口只有一個方法actionPerformed( )設(shè)置ActionEvent事件監(jiān)視器的方法是addActionListener( ) 即將監(jiān)聽器添加到事件源中用的是addActionListener( ),8、設(shè)置ItemEvent事件監(jiān)視器的方法是addItemListener( ),ItemListener接口只有一個方法itemStateChanged( )9、設(shè)置TextEvent事件的監(jiān)視器的方法是addTextListener( ),TextListener接口只有一個方法,這個方法是textValueChanged( )13、(鼠標(biāo)事件)MouseListener接口有五個方法,這個五方法是mousePressed( ) 、mouseReleased()、mouseEntered()、mouseExited()、mouseClicked() 14、(鼠標(biāo)移動事件)MouseMotionListener接口有兩個方法,這個兩方法是mouseDragged( ) 、mouseMoved()15、TextField類的對象文本框上引發(fā)ActionEvent事件的操作是(D) A、改變文本框中的字符 B、在文本框內(nèi)單擊 C、在文本框內(nèi)雙擊 D、在文本框內(nèi)按回車鍵16、TextArea類的對象文本區(qū)上引發(fā)TextEvent事件的操作是(A) A、改變文本區(qū)中的文本的內(nèi)容 B、在文本區(qū)內(nèi)單擊 C、在文本區(qū)內(nèi)雙擊 D、鼠標(biāo)在文本區(qū)內(nèi)移動17、CheckBox類可以創(chuàng)建兩種選擇框:單選和復(fù)選,創(chuàng)建”單選”選擇框的構(gòu)造方法是( B ) A、Checkbox() B、Checkbox(String s, Boolean b, CheckboxGroup g) C、Checkbox(String s) D、Checkbox(String s,Boolean b)18、Checkbox類的方法getState() 可以返回選擇框的選中狀態(tài),如果是選中,該方法的返回值是( A ) A、true B、false C、1 D、021、List創(chuàng)建的對象是滾動列表,當(dāng)用鼠標(biāo)單擊滾動列表的某個選項后就發(fā)生( D )、List創(chuàng)建的對象是滾動列表,當(dāng)用鼠標(biāo)雙擊滾動列表的某個選項后就發(fā)生( A )、菜單項(MenuItem)上發(fā)生的事件是( A ) A、ActionEvent事件B、MouseClick事件C、MouseEvent事件D、ItemEvent事件24、Runnable接口只有一個方法,這個方法是( B ) A、start() B、run() C、init() D、begin()25、啟動線程,即使線程從新建狀態(tài)轉(zhuǎn)入就緒狀態(tài)并進(jìn)入就緒隊列排隊的方法是( A ) A、start() B、run() C、init() D、begin()26、線程的sleep方法的功能是( B ) A、使線程死亡 B、線程暫時放棄CPU資源 C、線程休息一會,但不放棄CPU資源 D、線程結(jié)束27、當(dāng)多個線程調(diào)用同一方法時,為使線程同步,該方法應(yīng)使用修飾關(guān)鍵字( C ) A、protected B、void C、synchronized D、public29、建立客戶端、服務(wù)器端套接字的構(gòu)造方法名是( A、 B ) A、Socket() B、ServerSocket() C、UrlSocket() D、UdpSocket()三、判斷題1、如果類里定義了一個或多個構(gòu)造方法,那么Java不提供默認(rèn)的構(gòu)造方法。()2、如果定義的類中沒有給出構(gòu)造方法,系統(tǒng)也不會提供構(gòu)造方法。()系統(tǒng)給出與類同名的構(gòu)造方法。3、可以通過類名直接訪問類變量。()4、實例方法既能被對象調(diào)用,又能用類名直接調(diào)用。()實例方法只能通過對象來調(diào)用。5、類方法既能被對象調(diào)用,又能用類名直接調(diào)用。()6、一個類的所有對象共享類變量。()即類變量是一個類只有一個的10、多態(tài)性就是指父類的某個方法被其子類重寫時,可以各自產(chǎn)生自己的功能行為。()11、Java不允許使用int型變量指定數(shù)組的大小。()與C語言不同,Java允許使用int型變量指定數(shù)組的大小。42、FileInputStream使用字節(jié)流讀取文件,而FileReader使用字符流讀取文件。()43、RandomAccessFile類創(chuàng)建的流既可以作為源也可以作為目地的。()74、利用File對象不但可以判斷一個文件或目錄是否存在、是否可讀可寫、是否是文件、是否是目錄,而且可以執(zhí)行創(chuàng)建子目錄、列舉目錄中的文件、獲得文件長度、刪除文件、修改文件名字等操作。()75、打開一個文件輸入輸出流不需使用try-catch結(jié)構(gòu)。()打開文件必須使用try-catch結(jié)構(gòu)。47、如果try塊中沒有語句產(chǎn)生異常,則在執(zhí)行完try塊中的全部語句后,再進(jìn)入try塊后面的catch塊。() 不產(chǎn)生異常就不進(jìn)入catch塊。48、一個try塊都必須有至少一個catch塊與之對應(yīng),當(dāng)一個try塊有多個catch塊與之對應(yīng)時,應(yīng)該把參數(shù)為父類異常對象的catch塊排在后面。()12、容器本身也是一個組件,因此,可以把一個容器添加到另一個容器中實現(xiàn)容器的嵌套。()17、Panel類的實例及它的子類的實例都是容器。()18、Canvas類的實例及它的子類的實例都是容器。()Canvas畫布,可在其中繪畫,不是容器類。21、 用GridLayout布局的容器調(diào)用add方法將組件加入到容器中時,可以直接設(shè)定在某個網(wǎng)格單元中添加組件。()只能按網(wǎng)格順序添加組件。19、 一個容器設(shè)置布局的方法是setLayout(布局對象)。()66、一個容器中可以混合使用多種布局策略。()63、使用BorderLayout的容器最多只能放置5個組件,如果要放置更多的組件,則需要使用多層容器。()64、使用BorderLayout和GridLayout布局策略的容器,其中的所有空間都被組件占滿,沒有任何空隙。() 組件間可以設(shè)置橫向和縱向空隙。65、使用GridLayout布局策略的容器中,所有的組件都有相同大小。()22、Java Applet小程序類及其子類所創(chuàng)建的對象默認(rèn)的布局是BorderLayout。()是FlowLayout布局。23、Panel類及其子類所創(chuàng)建的對象默認(rèn)的布局是FlowLayout。()24、Frame類及其子類所創(chuàng)建的對象默認(rèn)的布局是BorderLayout。()25、Dialog類及其子類所創(chuàng)建的對象默認(rèn)的布局是FlowLayout。()是BorderLayout布局。27、下拉列表Choice類的方法select(int index)可以把下拉列表中索引值是index的選項設(shè)置成選中狀態(tài)。()69、新創(chuàng)建的Frame窗框?qū)ο?,會自動顯示在屏幕上。()必須用setVisible(true)方法才能顯示在屏幕上。70、使用add()方法可以向容器中添加組件,使用remove()方法可以將組件從容器中移出。()28、組件調(diào)用方法setSize(int w,int h)可以設(shè)置組件的大小。()29、組件調(diào)用方法setLocation(int x,int y)可以設(shè)置組件在容器中的位置。()30、組件調(diào)用方法setBounds(int x,int y,int w,int h)可以設(shè)置組件在容器中的位置和組件的大小。()31、組件調(diào)用方法setBackground(Color c)可以設(shè)置組件上的字體的顏色。()是設(shè)置組件背景顏色。字體是前景色14、文本框(TextField類的對象)和文本區(qū)(textArea類的對象)的不同之處是二者對事件的處理不同。() 二者的文本處理方式與方法也不同。15、文本區(qū)(textArea類)的方法setText(String s)和append(String s)的功能是相同的。()SetText(String s)方法將在文本區(qū)中重寫文本s并覆蓋原先的文本,而append(String s)只是在文本區(qū)尾部追加文本s。67、可以使用append()方法把一個字符串添加到一個TextField中原有字符串的后面。()54、Label、TextField和TextArea對象都擁有方法setText(),用來設(shè)置其中的文本內(nèi)容。()16、標(biāo)簽的功能只是顯示文本,不能動態(tài)地編輯文本。()35、Menu 是MenuItem的子類。()71、Menu對象中只能加入MenuItem對象。()還可以加入Menu對象,以便設(shè)置子菜單。73、MenuItem也可以添加到MenuBar上。()只能添加到Menu上。33、將菜單條放在窗口上的方法是setMenuBar(MenuBar bar)。()34、菜單放在菜單條里,菜單項放在菜單里。()36、對話框必須要依賴于某個窗口或組件。()37、有模式對話框處于激活狀態(tài)時,程序仍能激活它所依賴的窗口或組件。()按有模式對話框定義,不能激活其依賴的窗口。72、設(shè)一個窗口中包含一個按鈕,當(dāng)用戶點擊該按鈕時會彈出一個無模式對話框,則當(dāng)窗口關(guān)閉時該對話框也隨之關(guān)閉。()55、對于一個Button對象,可以調(diào)用方法getLabel()獲取其上的標(biāo)簽,從而判斷是哪個按鈕。()56、一個Checkbox對象既可以作為一個復(fù)選按鈕,也可以作為一個單選按鈕組中的一個按鈕。()57、一個復(fù)選按鈕實現(xiàn)的是“二選一”的結(jié)構(gòu),一個單選按鈕組實現(xiàn)的是“多選一”的結(jié)構(gòu)。()58、List對象可以實現(xiàn)“多選一”結(jié)構(gòu),也可以實現(xiàn)“多選多”結(jié)構(gòu),完全由創(chuàng)建List對象時的參數(shù)確定。()59、所有的鼠標(biāo)事件都由實現(xiàn)了MouseListener監(jiān)聽接口的監(jiān)聽者來處理。() 鼠標(biāo)移動等由MouseMotionListener接口監(jiān)聽處理。60、當(dāng)用戶鼠標(biāo)移入Applet的區(qū)域范圍時觸發(fā)mouseEnter()方法,當(dāng)用戶鼠標(biāo)移出Applet的區(qū)域范圍時觸發(fā)mouseExit()方法。()61、調(diào)用KeyEvent對象的方法getKeyChar()可以獲得用戶操作的鍵盤按鍵的字符值,調(diào)用getKeyText()可以獲得用戶操作的一些特殊字符,例如“F3”等。()62、鼠標(biāo)點擊在屏幕上任何位置處,都可以激活mouseClicked()方法。()49、Java中畫圓和畫橢圓使用的是相同的方法。()32、組件調(diào)用repaint()方法時,會自動調(diào)用update()方法,而update()方法的功能是清除paint()以前所畫的內(nèi)容。()50、調(diào)用畫矩形方法需要給出的是矩形左上角和右下角的坐標(biāo)。()給出左上角座標(biāo)及矩形有長度和寬度。44、客戶端和服務(wù)器端呼叫的端口號必須相同。()78、進(jìn)程是程序的一次動態(tài)執(zhí)行過程。()39、一個進(jìn)程在其執(zhí)行過程中,可以產(chǎn)生多個線程。()40、Java中編程實現(xiàn)多線程應(yīng)用有兩個途徑:一種是用Thread類的子類創(chuàng)建線程,另一種是用Thread類創(chuàng)建線程。()41、用Thread類創(chuàng)建線程時,創(chuàng)建目標(biāo)對象的類必須實現(xiàn)Runnable方法。()76、一個線程對象的具體操作是由run()方法的內(nèi)容確定的,但是Thread類的run0方法是空的,其中沒有內(nèi)容;所以用戶程序要么派生一個Thread的子類并在子類里重新定義run() 方法,要么使一個類實現(xiàn)Runnable接口并書寫其中run()方法的方法體。()77、下面的語句將線程對象mt的優(yōu)先級設(shè)置為12:mt.setPriority(12);()78、某程序中的主類不是Thread的子類,也沒有實現(xiàn)Runnable接口,則這個主類運行時不能控制主線程睡眠。()79、sleep()和wait()方法都使當(dāng)前運行線程放棄處理器和它所占用的同步資源管理。() sleep()方法是,而wait()方法不是。80、掛起、阻塞或等待的線程都能夠恢復(fù)運行,但是停止運行的線程將不可能再復(fù)生。()四、寫出下列程序或程序片段的運行結(jié)果4、import java.util.*;public class E1 public static void main(String args) String s=”I am Wanglin,she is my friend,she is a student”; StringTokenizer fenxi=new StringTokenizer(s,” ,”); int n=fenxi.countTokens(); while(fenxi.hasMoreTokens() String s1=fenxi.nextToken(); System.out.print(s1+“ ”); System.out.println(); System.out.println(“count=”+n); 答:運行結(jié)果:I am Wanglin she is my friend she is a student count=11 8、public class UseRef public static void main(String args) MyClass1 myobj,myref; myobj=new MyClass1(-1); myref=myobj; System.out.println(”the original data is:”+myobj.getData(); myref.setData(10); System.out.println(”now the data is:”+myobj.getData(); class MyClass1 int data; MyClass1(int d) data=d;int getData() return data;void setData(int d) data=d;答:運行結(jié)果為:the original data is :-1 now the data is:1011、public static void main(String args) char a=new char33; for(int i=0;ia.length;i+) for(int j=0;j=j)aij=*;else aij=;for(int i=0;ia.length;i+) for(int j=0;jai.length;j+) System.out.print(aij); System.out.println(); 答:運行結(jié)果為:* * * * * *12、public static void main(String arg) int array=new int10; for(int i=0;i1) return an-1+sum(a,n-1); else return a0; 答:運行結(jié)果為:5513、public class CreateStringpublic static void main(String args) char cArray=一,路,順,風(fēng),!; String sArray=new String7; StringBuffer sb=new StringBuffer(“很高興見到您!”); String s=”別來無恙?”; sArray0=new String(s); sArray1=new String(); sArray2=new String(“節(jié)日快樂!”); sArray3=new String(cArray); sArray4=new String(cArray,2,3); sArray5=new String(sb); for(int i=0;isArray.length;i+) System.out.println(sArrayi); 答:運行結(jié)果為:別來無恙? (println換到下一行)節(jié)日快樂!一路順風(fēng)!順風(fēng)!很高興見到您!null (定義了7個長度的)14、class Student int number; String name; Student(int number,String name) this.number=number;=name;System.out.println(I am +name+ my number is +number); class Univer_Student extends Student boolean 婚否; Univer_Student(int number,String name,boolean b) super(number,name);婚否=b;System.ou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024預(yù)應(yīng)力管樁勞務(wù)分包合同
- 2025年度智能辦公空間場地租賃合作協(xié)議書4篇
- 專項水電維修分包合同書2024版范例版
- 二零二五年度文化產(chǎn)業(yè)代理注銷合作協(xié)議3篇
- 2024年04月廣州銀行白云支行2024年社會招考筆試歷年參考題庫附帶答案詳解
- 2025年度產(chǎn)學(xué)研合作項目資金支持及財務(wù)管理合同4篇
- 專業(yè)短駁貨物運輸協(xié)議示范文本版B版
- 2025年度廠房裝修項目環(huán)保評估與治理合同3篇
- 二零二五年度財務(wù)共享服務(wù)中心建設(shè)合同3篇
- 二零二五年度跨境電商供應(yīng)鏈金融連帶責(zé)任擔(dān)保協(xié)議3篇
- ICU常見藥物課件
- CNAS實驗室評審不符合項整改報告
- 農(nóng)民工考勤表(模板)
- 承臺混凝土施工技術(shù)交底
- 臥床患者更換床單-軸線翻身
- 計量基礎(chǔ)知識培訓(xùn)教材201309
- 中考英語 短文填詞、選詞填空練習(xí)
- 一汽集團及各合資公司組織架構(gòu)
- 阿特拉斯基本擰緊技術(shù)ppt課件
- 初一至初三數(shù)學(xué)全部知識點
- 新課程理念下的班主任工作藝術(shù)
評論
0/150
提交評論