




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《JAVA程序設(shè)計(jì)》習(xí)題集及參考答案填空題Java是面向?qū)ο蟮慕忉屝偷母呒?jí)編程語(yǔ)言,其程序源代碼的擴(kuò)展名為.java生成的字節(jié)碼文件名的擴(kuò)展名為.class,Java解釋器把各種平臺(tái)間的差異隱藏起來(lái),這種由解釋器包裹起來(lái)的完整的軟硬件平臺(tái)稱為Java虛擬機(jī)。JavaApplication是獨(dú)立、完整的程序,在命令行調(diào)用獨(dú)立的解釋器軟件(java.exe)即可運(yùn)行,其程序主類必須有一個(gè)main()方法,完整的方法頭為publicstaticvoidmain(Stringaegs[])。把方法看作是數(shù)據(jù)的特性,而不把數(shù)據(jù)和方法分開(kāi),JAVA正是體現(xiàn)了這種建立面向?qū)ο笙到y(tǒng)過(guò)程中重要步驟的思想.。建立類類型的變量(引用)后,系統(tǒng)只分配引用空間,程序員要調(diào)用new來(lái)創(chuàng)建對(duì)象實(shí)例,然后才分配相應(yīng)的存儲(chǔ)空間。如果需要在同一類中書寫多個(gè)方法,讓它們對(duì)不同的變量進(jìn)行同樣的操作,就需要重載方法名。如果子類中定義方法所用的名字、返回類型和參數(shù)表和父類中方法使用的完全一樣,稱子類方法覆蓋了父類中的方法。覆蓋的同名方法中,子類方法不能比父類方法的訪問(wèn)權(quán)限更嚴(yán)格。容器中組件的位置由容器的布局管理器決定,容器不僅可以容納組件,還可以容納其它容器這一點(diǎn)非常重要,由此可以設(shè)計(jì)出復(fù)雜的圖形用戶界面布局。Java抽象窗口工具中提供了多種容器,其中最重要的兩種是框架和面板。JDK1.1引入了委托模型處理機(jī)制,組件必須注冊(cè)一個(gè)事件處理程序,事件對(duì)象只傳遞給已經(jīng)注冊(cè)的監(jiān)聽(tīng)程序,每種事件都有一個(gè)對(duì)應(yīng)的監(jiān)聽(tīng)程序類以實(shí)現(xiàn)相應(yīng)的監(jiān)聽(tīng)程序接口,并定義了事件對(duì)象的接收和處理方法。異常處理的重要性在于,程序不但要發(fā)現(xiàn)異常,還要捕獲異常并編寫代碼來(lái)處理類是同種對(duì)象集合的抽象,而屬于類的某一個(gè)對(duì)象則被稱為是類的一個(gè)實(shí)例,對(duì)象是具有狀態(tài)、行為、標(biāo)志三種屬性的計(jì)算機(jī)軟件結(jié)構(gòu)。用戶自己定義的Applet子類是JavaApplet的標(biāo)志。實(shí)際運(yùn)行中,瀏覽器在下載字節(jié)碼的同時(shí),會(huì)自動(dòng)創(chuàng)建一個(gè)用戶Applet子類的實(shí)例,并在適當(dāng)事件發(fā)生時(shí)自動(dòng)調(diào)用該實(shí)例的幾個(gè)主要方法是:init()方法、start()方法、paint()方法、stop()方法和destroy()方法。JavaApplication是獨(dú)立、完整的程序,在命令行調(diào)用獨(dú)立的解釋器軟件(java.exe)即可運(yùn)行,其程序主類必須有一個(gè)main()方法,完整的方法頭為publicstaticvoidmain(Stringaegs[])。JavaApplet程序需要與瀏覽器中已預(yù)先實(shí)現(xiàn)好的功能結(jié)合,才能構(gòu)成一個(gè)完整的程序,其直接父類必須為Applet類,Applet所需做的是接收瀏覽器發(fā)送給它的消息或事件,如鼠標(biāo)移動(dòng)、擊鍵等,并作出及時(shí)的響應(yīng)。。JDK1.1事件處理機(jī)制引入了委托事件模型,如ActionEvent類表達(dá)的事件由ActionListener接口中定義的方法actionPerformed()來(lái)負(fù)責(zé)響應(yīng)和處理。Java程序可以分為兩大類:一類稱為Application程序,另一類稱為Applet程序。Java解釋器只能執(zhí)行JVM編譯的代碼,Java解釋器有三項(xiàng)主要工作:下載代碼、校驗(yàn)代碼、和執(zhí)行代碼。關(guān)系運(yùn)算符“==”可判定兩個(gè)字串對(duì)象是否是同一實(shí)例,即它們?cè)趦?nèi)參中的存儲(chǔ)空間是否相同,而equals()方法可以判定兩個(gè)字串是否相等。構(gòu)造方法是特殊的類方法,它的名字與類名相同,無(wú)返回值,在創(chuàng)建對(duì)象實(shí)例時(shí)由new運(yùn)算符自動(dòng)調(diào)用。用戶自定義的所有異常類都必須是Exception的子類,程序中發(fā)生異常時(shí),程序員可以拋出(throw)一個(gè)異常實(shí)例。線程由Thread對(duì)象的實(shí)例來(lái)引用。線程執(zhí)行的代碼來(lái)源于傳遞給Thread構(gòu)造方法的參數(shù)引用的類,這個(gè)類必須實(shí)現(xiàn)了接口Runnable。一般在關(guān)閉一個(gè)緩沖輸出流之前應(yīng)使用flush()方法強(qiáng)制輸出剩余數(shù)據(jù),以確保緩沖區(qū)內(nèi)的數(shù)據(jù)全部寫入數(shù)據(jù)流。BorderLayout布局管理器管理下,組件必須通過(guò)add()方法加入容器的五個(gè)區(qū)域,而f.setVisible(true);語(yǔ)句可以使框架f以及它所包含的組件對(duì)用戶可見(jiàn)。被標(biāo)記為final的方法將不能被覆蓋,而抽象類abstractclass必須被繼承Java虛擬機(jī)(JVM)是編譯后的Java程序和硬件系統(tǒng)之間的接口,是用軟件方法實(shí)現(xiàn)的一臺(tái)假想機(jī)。JVM使用的代碼存儲(chǔ)在.class文件中。JavaApplet中的init()方法僅在開(kāi)始的時(shí)候執(zhí)行一次,start()方法在用戶每次訪問(wèn)包含Applet的HTML文件時(shí)都會(huì)被調(diào)用,repaint()方法可以用來(lái)更新Applet的畫面。Java對(duì)class類型變量的內(nèi)存分配分兩步進(jìn)行:說(shuō)明變量時(shí),在內(nèi)存中為其建立一個(gè)引用,然后程序員需用new申請(qǐng)相應(yīng)的內(nèi)存空間。JDK1.1事件處理機(jī)制引入了委托事件模型,如ItemEvent類表達(dá)的事件由ItemListener接口中定義的方法itemStateChanged(ItemEvente)來(lái)負(fù)責(zé)響應(yīng)和處理。Java所有包中都定義了異常類和錯(cuò)誤類,Exception類是所有異常的父類,Error類是所有錯(cuò)誤的父類,這兩個(gè)類同時(shí)又是Throwable的子類。對(duì)于類FileInputStream的實(shí)例對(duì)象,如果所指定的文件不存在,則產(chǎn)生FileNotFoundException異常,由于它是非運(yùn)行時(shí)異常,因此必須加以捕獲或聲明。面向?qū)ο蟮某绦蛟O(shè)計(jì)中,重載方法屬于同一個(gè)類,而覆蓋方法分屬于父、子類。創(chuàng)建線程有兩種方法,一種是繼承Thread類,另一種是實(shí)現(xiàn)Runnable接口。一個(gè)線程被創(chuàng)建,實(shí)際并沒(méi)有立即運(yùn)行,必須通過(guò)方法start()來(lái)啟動(dòng),所以也可以把這一過(guò)程想象為打開(kāi)虛擬CPU的開(kāi)關(guān)。Java是面向?qū)ο蟮慕忉屝偷母呒?jí)編程語(yǔ)言,其程序源代碼的擴(kuò)展名為.java生成的字節(jié)碼文件名的擴(kuò)展名為.class,Java解釋器把各種平臺(tái)間的差異隱藏起來(lái),這種由解釋器包裹起來(lái)的完整的軟硬件平臺(tái)稱為Java虛擬機(jī)。類是同種對(duì)象集合的抽象,而屬于類的某一個(gè)對(duì)象則被稱為是類的一個(gè)實(shí)例,對(duì)象是具有狀態(tài)、行為、標(biāo)志三種屬性的計(jì)算機(jī)軟件結(jié)構(gòu)。用戶自己定義的Applet子類是JavaApplet的標(biāo)志。實(shí)際運(yùn)行中,瀏覽器在下載字節(jié)碼的同時(shí),會(huì)自動(dòng)創(chuàng)建一個(gè)用戶Applet子類的實(shí)例,并在適當(dāng)事件發(fā)生時(shí)自動(dòng)調(diào)用該實(shí)例的幾個(gè)主要方法是:init()方法、start()方法、paint()方法、stop()方法和destroy()方法。判斷題JAVA程序是由若干類定義組成的,類定義包括定義類頭和定義類體。(√)類頭定義主要說(shuō)明類的名字、父類名和接口名。(×)引用一個(gè)類的屬性或調(diào)用其方法,必須以這個(gè)類的對(duì)象為前綴。(×)有的類定義時(shí)可以不定義類構(gòu)造函數(shù),所以構(gòu)造函數(shù)不是必須的。(×)類及其屬性、方法可以同時(shí)有一個(gè)以上的修飾符來(lái)修飾。(√)抽象類沒(méi)有具體對(duì)象,所以抽象類沒(méi)有構(gòu)造函數(shù)。(×)接口是特殊的類,所以接口也可以繼承,子接口將繼承父接口的所有常量和抽象方法。(√)Class1類的屬性被private修飾符修飾為私有變量,所以方法不能訪問(wèn)它。一個(gè)Java類可以有一個(gè)父類,并實(shí)現(xiàn)多個(gè)接口。(√)如果a是父類Parent的對(duì)象,而b是子類Child的對(duì)象,則語(yǔ)句a=b是正確的。(√)11.用畫矩形方法需要給出的是矩形左上和右下角的坐標(biāo)。(×)12.TextField和TextArea是用來(lái)接受用戶輸入的組件,但是也可以由程序控制使用戶不能在其中輸入信息。(√)13.下面的語(yǔ)句把組件com加入到容器的中央:add(Center,com);。(×)14.一個(gè)Checkbox對(duì)象既可以作為一個(gè)復(fù)選按鈕,也可以作為一個(gè)單選按鈕組中的一個(gè)按鈕。(√)15.當(dāng)用戶鼠標(biāo)移入Applet的區(qū)域范圍時(shí)觸發(fā)mouseEnter()方法,當(dāng)用戶鼠標(biāo)移出Applet的區(qū)域范圍時(shí)觸發(fā)mouseExit()方法。(√)16.用“+”可以實(shí)現(xiàn)字符串的拼接,用“—”可以從一個(gè)字符串中去除一個(gè)子串。(×)17.在Applet中調(diào)用方法showStatus(Strings),可以把字符串s的內(nèi)容顯示在運(yùn)行Applet的瀏覽器下方的狀態(tài)欄中。(√)18.一個(gè)容器必須使用FlowLayout、BorderLayout、GridLayout、CardLayout和GridBagLayout五種布局策略中的一種。(×)二維數(shù)組說(shuō)明語(yǔ)句:int[]a3[]=newint[4][6];。(對(duì))創(chuàng)建新的類對(duì)象使用關(guān)鍵字new,回收無(wú)用的類對(duì)象使用關(guān)鍵字free。(錯(cuò))如已經(jīng)定義charch;,從鍵盤上輸入一個(gè)字符送到ch,可用標(biāo)準(zhǔn)輸入流:ch=System.in.read();(錯(cuò))當(dāng)一個(gè)方法在運(yùn)行過(guò)程中產(chǎn)生一個(gè)異常,則這個(gè)方法會(huì)終止,但是整個(gè)程序不一定終止運(yùn)行。(對(duì))所有的鼠標(biāo)事件都有由MouseEvent類的對(duì)象表示。(對(duì))TextField和TextArea是用來(lái)接受用戶輸入的組件,但是也可以由程序控制使用戶不能在其中輸入信息。(對(duì))因?yàn)镴ava不支持多重繼承,所以定義類時(shí)implements關(guān)鍵字后面只能說(shuō)明一個(gè)接口名。(錯(cuò))抽象方法必須在抽象類中,所以抽象類中的方法都必須是抽象方法。(錯(cuò))一個(gè)Java類可以有多個(gè)父類(錯(cuò)構(gòu)造函數(shù)因?yàn)闆](méi)有返回值,所以其中出現(xiàn)的錯(cuò)誤用異常處理較為恰當(dāng)(對(duì))用“+”可以實(shí)現(xiàn)字符串的拼接,用“-”可以從一個(gè)字符串中去除一個(gè)子串(錯(cuò))30.在Applet中調(diào)用方法showStatus(Strings),可以把字符串s的內(nèi)容顯示在運(yùn)行Applet的瀏覽器下方的狀態(tài)欄中(對(duì))31.getImage()方法與drawImage()方法都是Image對(duì)象的方法(錯(cuò))32.Java可以顯示的圖像文件類型包括后綴為.jpg和.gif的兩種文件格式(對(duì))33.一個(gè)容器中可以混合使用多種布局策略(對(duì))34.一個(gè)Checkbox對(duì)象既可以作為一個(gè)復(fù)選按鈕,也可以作為一個(gè)單選按鈕組中的一個(gè)按鈕(對(duì))35.當(dāng)用戶鼠標(biāo)移入Applet的區(qū)域范圍時(shí)觸發(fā)mouseEnter()方法,當(dāng)用戶鼠標(biāo)移出Applet的區(qū)域范圍時(shí)觸發(fā)mouseExit()方法(對(duì))36.可以先創(chuàng)建一個(gè)空白的Label對(duì)象,然后再向里面設(shè)置具體的文本內(nèi)容(錯(cuò))37.一個(gè)容器必須使用FlowLayout、BorderLayout、GridLayout、CardLayout和GridBagLayout五種布局策略中的一種(錯(cuò))38.接口KeyListener中有兩個(gè)抽象方法KeyUp()和KeyDown()(錯(cuò))39.使用GridLayout布局策略的容器中,所有組件都有相同大小(對(duì))40.一個(gè)程序里有且只能有一個(gè)公共類,它就是主類。(對(duì))41.lass1類的屬性被private修飾符修飾為私有變量,所以方法不能訪問(wèn)它。(錯(cuò))42.最終類不能派生子類,最終方法不能被覆蓋。(對(duì))43.子類要調(diào)用父類的方法,必須使用super關(guān)鍵字。(錯(cuò))44.一個(gè)Java類可以有一個(gè)父類,并實(shí)現(xiàn)多個(gè)接口。(對(duì))接口是特殊的類,所以接口也可以繼承,子接口將繼承父接口的所有常量和抽象方法。(對(duì))調(diào)用畫矩形方法需要給出的是矩形左上和右下角的坐標(biāo)。(錯(cuò))TextField和TextArea是用來(lái)接受用戶輸入的組件,但是也可以由程序控制使用戶不能在其中輸入信息。(對(duì))下面的語(yǔ)句把組件com加入到容器的中央:add(Center,com);。(錯(cuò))二維數(shù)組說(shuō)明語(yǔ)句:inta[5][5]=newint[][];。(錯(cuò))一個(gè)容器可以使用多種布局管理器。(對(duì))子類要調(diào)用父類的方法必須使用super關(guān)鍵字。(錯(cuò))某程序中的主類不是Thread的子類,也沒(méi)有實(shí)現(xiàn)Runnable接口,則這個(gè)主類運(yùn)行時(shí)不能控制主線程睡眠。(錯(cuò))一個(gè)Chckbox對(duì)象既可以作為一個(gè)復(fù)選按鈕,也可以作為一個(gè)單選按鈕組中的一個(gè)按鈕。(對(duì))選中菜單項(xiàng)時(shí)將引發(fā)ItemEvent事件。(錯(cuò))MenuItem也可以添加到MenuBar上。(錯(cuò))所有鼠標(biāo)事件都是由實(shí)現(xiàn)了MouseListener監(jiān)聽(tīng)接口的監(jiān)聽(tīng)者來(lái)處理。(錯(cuò))getImage()方法與drawImage()方法都是Image對(duì)象的方法。(錯(cuò))Panel和Applet也可以擁有菜單。(錯(cuò))三、一句話寫程序定義一個(gè)類,其名稱為MyClass,它可以被所有其它類訪問(wèn)。publicclassMyClass{}比較String類的對(duì)象str是否和字串“abcde”相等,并把結(jié)果賦予變量resultbooleanresult=str.equals(“abcde”)設(shè)bt是一個(gè)按鈕對(duì)象,把它注冊(cè)給相應(yīng)的監(jiān)聽(tīng)器(設(shè)為當(dāng)前容器)bt.addActionListener(this);定義一個(gè)標(biāo)簽prompt,并顯示”InputPlease:”的語(yǔ)句為:Labelprompt=newLabel(“InputPlease:”)創(chuàng)建一個(gè)有3個(gè)數(shù)組的數(shù)組matrix,每個(gè)數(shù)組又有4個(gè)整數(shù)。intmatrix[][]=newint[3][4];把組件對(duì)象output加入到圖形界面。add(output);將當(dāng)前顏色設(shè)置成紅色g.setColor(Color.red);得到在文本框input1輸入的信息并送到整型變量days中。days=Integer.parseInt(input1.getText());得到在文本框input2輸入的信息并送到實(shí)型變量out中。out=Double.valueOf(input2.getText()).double.Value();創(chuàng)建一個(gè)FlowLayout,使應(yīng)用該布局管理器的各個(gè)組件都向右對(duì)齊排列FlowLayoutf1=newFlowLayout(FlowLayout.RIGHT);11.定義一個(gè)整型變量Mine,使得只有這個(gè)類本身可以訪問(wèn)它。privateintMine;12創(chuàng)建類Class1的一個(gè)對(duì)象Object1。Class1Object1=newClass1();13..設(shè)sb是一個(gè)滾動(dòng)條對(duì)象,把它注冊(cè)給響應(yīng)事件監(jiān)聽(tīng)器(設(shè)為當(dāng)前容器):sb.addAdjustmentListener(this);14.為HTML文件書寫一個(gè)語(yǔ)句,向Applet傳送一個(gè)名為”param1”,數(shù)值為”25”的Applet參數(shù)。<paramname=”param1”value=”25”>15.創(chuàng)建一個(gè)復(fù)選框cb,標(biāo)簽為“注冊(cè)用戶”。Checkboxcb=newCheckbox(“注冊(cè)用戶”);16.一般菜單條最右邊有一個(gè)幫助菜單,現(xiàn)有一個(gè)幫助菜單helpmenu,將它添加到菜單條mb中。mb.setHelpMenu(helpmenu);17.獲取文本區(qū)域area1中被用戶選中的文字,添加到另一個(gè)文本區(qū)域area2中。area2.append(area1.getSelectedText());18.使面板pan的布局管理器失效。pan.setLayout(null);調(diào)用對(duì)象Object1的方法method1,把返回值賦值給變量Hold。Hold=Object1.method1();20.定義一個(gè)整型屬性Mine,使得只有這個(gè)類本身可以訪問(wèn)它。privateintMine;21.定義一個(gè)抽象方法abstractMethod,沒(méi)有形式參數(shù),返回值為布爾型量。abstractbooleanabstractMethod();22.為HTML文件書寫一個(gè)語(yǔ)句,向Applet傳送一個(gè)名為”param1”,數(shù)值為”25”的Applet參數(shù)。<paramname=”param1”value=”25”>23.獲得上題從HTML文件中傳送來(lái)的整型參數(shù)賦值給Applet的屬mypmyp=Integer.parseInt(getParameter(“param1”));當(dāng)前的顏色設(shè)成紅色。g.setColor(Color.red);Applet要響應(yīng)鼠標(biāo)點(diǎn)擊事件,應(yīng)在init()方法中加入的語(yǔ)句為(設(shè)鼠標(biāo)事件的監(jiān)聽(tīng)者就是Applet本身):this.addMouseListener(this);設(shè)sb是一個(gè)滾動(dòng)條對(duì)象,把它注冊(cè)給響應(yīng)事件監(jiān)聽(tīng)器(設(shè)為當(dāng)前容器):sb.addAdjustmentListener(this);使窗框mf的大小不可由用戶鼠標(biāo)隨意改變。Mf.setResizeable(false);獲取文本框tf1中被用戶選中的文字,添加到另一個(gè)文本框tf2中。tf2.setText(tf2.getText()+tf1.getSelectedText());建一個(gè)列表,列表的高度可以顯示三個(gè)選項(xiàng),這個(gè)列表是可以多選的。ListMyList=newList(3,true);30.創(chuàng)建一個(gè)復(fù)選按鈕,標(biāo)簽為“注冊(cè)用戶”。Checkboxbm=newCheckbox(“注冊(cè)用戶”);31.義一個(gè)類:classDepartment,要為類屬性:部門編號(hào)(整型)、部門名稱(字串)、工資總額(浮點(diǎn)型)賦初值,其構(gòu)造函數(shù)的方法名應(yīng)為:Department(intdno,Stringdname,doubletotal){}得名為input文本框中的信息,并把它賦給雙精度變量getDoublegetDouble=Double.valueOf(input.getText()).doubleValue();33..將當(dāng)前前景顏色設(shè)置成綠色。g.setForeground(Color,green);x是一個(gè)復(fù)選框?qū)ο螅阉?cè)給響應(yīng)事件監(jiān)聽(tīng)器(設(shè)為當(dāng)前容器):fx.addItemListener(this);如上題復(fù)選框已它注冊(cè)給響應(yīng)事件監(jiān)聽(tīng)器,則系統(tǒng)自動(dòng)響應(yīng)復(fù)選框狀態(tài)改變的調(diào)用方法為:publicvoiditemStateChanged(ItemEvente){}創(chuàng)建一個(gè)FlowLayout,使應(yīng)用該布局管理器的各個(gè)組件都向右對(duì)齊排列。FlowLayoutf1=newFlowLayout(FlowLayout.RIGHT);36.定義一個(gè)抽象方法abstractMethod(),無(wú)形式參數(shù),返回值為布爾型。abstractbooleanabstractMethod();語(yǔ)句drawOvel(10,10,150,150)畫出一個(gè)圓,請(qǐng)畫出它的外接矩形。DrawRect(10,10,150,150);38.創(chuàng)建一個(gè)列表myList,列表的高度可以顯示三個(gè)選項(xiàng),這個(gè)列表是可以多選的。ListmyList=newList(3,true);39.把Panelp的背景設(shè)置成紅色。p.setBackground(Color.red);40.啟動(dòng)線程t。t.start();41把管道輸入數(shù)據(jù)流pis和管道輸出數(shù)據(jù)流pos連接起來(lái)。Pis.connect(pos);42.獲取文本框tf1中被用戶選中的文字,添加到另一個(gè)文本框tf2中。tf2.setText(tf2.getText()+tf1.getSelectedText());43.在菜單mm中加入一條分割線。mm.addSeparator();為HTML文件書寫一個(gè)語(yǔ)句,嵌入一個(gè)名為MyApplet.class的Applet字節(jié)碼文件,其寬度為300,高度為200。<APPLETcode=MyApplet.classwidth=300height=200>設(shè)bn是一個(gè)按鈕,把它注冊(cè)給事件監(jiān)聽(tīng)器。(設(shè)為當(dāng)前容器)bn.addActionListener(this);編程題編寫程序找出所有水仙花數(shù)并輸出,水仙花數(shù)是三位數(shù),它的各位數(shù)字的立方和等于這個(gè)三位數(shù)本身,如371=33+73+13,371就是一個(gè)水仙花數(shù)。publicclassNarcissus{publicstaticvoidmain(Stringargs[]){intI,j,k,n=100,m=1;while(n<100){i=n/100;j=(n-i*100)/10;k=n%10;if((Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3))==n)System.out.println(“找到第“+m+++”個(gè)水仙花數(shù):“+n);n++;}}}編寫一個(gè)計(jì)算器,從屏幕輸入兩個(gè)運(yùn)算整數(shù),并以整數(shù)加、減、乘、除的順序進(jìn)行四則運(yùn)算。importjava.applet.Applet;importjava.awt.*;publicclassSwitchCalculateextendsApplet{Labelprompt=newLabel(“請(qǐng)輸入兩整數(shù)“);Labeloperate=newLable(“+”);TextFieldoperand1=newTextField(6);TextFieldoperand2=newTextField(6);Labelresult=newLabel(“運(yùn)算結(jié)果“);intcount=0;publicvoidinit(){add(prompt);add(operand1);add(operate);add(operand2);add(result);}publicBooleanaction(Evente,Objecto){intswt=count++%4;intx=1,y=1;x=Integer.parseInt(operand1.getText());y=Integer.parseInt(operand2.getText());prompt.setText(“請(qǐng)輸入兩個(gè)整數(shù)“);switch(swt){case0:result.setText(“=”+(x+y));operat.setText(“+”);case1:result.setText(“=”+(x-y));operat.setText(“-”);case2:result.setText(“=”+(x*y));operat.setText(“*”);case3:result.setText(“=”+(x/y));operat.setText(“/”);}repaint();returntrue;}}3.編寫以下完整程序:利用二維數(shù)組顯示如下圖形:******importjava.io.*;importjava.util.*;publicclassClass3{ publicstaticvoidmain(Stringargs[]) { chara[][]=newchar[3][3]; for(inti=0;i<a.length;i++) for(intj=0;j<a[i].length;j++) if(i>=j) a[i][j]='*'; else a[i][j]=''; for(inti=0;i<a.length;i++) { for(intj=0;j<a[i].length;j++) System.out.print(a[i][j]+"\t"); System.out.println(); } try{ System.in.read(); }catch(IOExceptione){}; }}4編寫一個(gè)Applet程序Test.java和運(yùn)行Test.class的文件Test.html。要求:1.Applet窗口尺寸:450x200;2.創(chuàng)建3個(gè)文本框,其中第3個(gè)文本框的底色為灰色(不可操作);3.當(dāng)在第2個(gè)文本框輸入完一個(gè)數(shù)字后,按下回車鍵,將在第3個(gè)文本框中顯示前2個(gè)文本框中數(shù)字之和。(前2個(gè)文本框中輸入的必須是整型數(shù)字)importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassTestextendsAppletimplementsActionListener{TextFieldtext1,text2,text3;publicvoidinit(){text1=newTextField("0");text2=newTextField("0");text3=newTextField("0");text3.setEditable(false);add(text1);add(text2);add(text3);text2.addActionListener(this);}publicvoidactionPerformed(ActionEvente){intx,y;if(e.getSource()==text2){ x=Integer.parseInt(text1.getText()); y=Integer.parseInt(text2.getText()); text3.setText(String.valueOf(x+y));}}}test.html:<html><appletcode=Test.classwidth=450height=200></applet></html>5.寫一個(gè)程序,使之具有如下所示界面:每當(dāng)選擇各組件時(shí),在狀態(tài)行即時(shí)顯示選擇的內(nèi)容,當(dāng)按下”輸入”按鈕時(shí),能在右邊文本域中顯示所中選中內(nèi)容;當(dāng)按”退出”按鈕時(shí),則結(jié)束程序的運(yùn)行。(用JDK1.1事處理機(jī)制進(jìn)行處理)importjava.applet.*;importjava.awt.*;importjava.awt.event.*;importjava.util.*;publicclassUseComponentextendsAppletimplements ActionListener,ItemListener{charch='n',ch1='y';intnj1=0,xb1=0; Checkboxzc=newCheckbox("注冊(cè)"); CheckboxGroupsex=newCheckboxGroup(); CheckboxmaleSex=newCheckbox("男",true,sex); CheckboxfemaleSex=newCheckbox("女",false,sex); Listnj=newList(4,false); Choicexb=newChoice(); TextArearesult=newTextArea("無(wú)信息",5,30); Buttonenter=newButton("輸入"); Buttonexit=newButton("退出"); publicvoidinit() { add(zc); zc.addItemListener(this); add(maleSex); maleSex.addItemListener(this); add(femaleSex); femaleSex.addItemListener(this); add(nj); nj.add("一年級(jí)上");nj.add("一年級(jí)下"); nj.add("二年級(jí)上");nj.add("二年級(jí)下"); nj.add("三年級(jí)上");nj.add("三年級(jí)下"); xb.addItemListener(this); nj.addItemListener(this); add(xb);xb.add("信息系");xb.add("電氣系"); xb.add("經(jīng)濟(jì)系");xb.add("機(jī)械系"); xb.add("基礎(chǔ)部");xb.add("國(guó)際合作部"); add(result); add(enter);enter.addActionListener(this); add(exit);exit.addActionListener(this); }publicvoiditemStateChanged(ItemEvente) { ItemSelectableis=e.getItemSelectable(); if(e.getItem()=="注冊(cè)")ch='y'; elsech='n'; if(is==maleSex)ch1='y'; elseif(is==femaleSex)ch1='n'; if(e.getStateChange()==ItemEvent.SELECTED)ch='y'; elseif(e.getStateChange()==ItemEvent.DESELECTED)ch='n'; if(e.getItem()=="男")ch1='y'; elseif(e.getItem()=="女")ch1='n'; if(is==nj) nj1=((List)is).getSelectedIndex(); if(is==xb)xb1=((Choice)is).getSelectedIndex(); showStatus(toString()); }publicvoidactionPerformed(ActionEvente) {if(e.getActionCommand()=="輸入") result.setText(toString()); elseSystem.exit(0); } publicStringtoString() { Strings=""; if(zc.getState()==true) {s="\n該學(xué)生已注冊(cè)!";} else {s="\n該學(xué)生沒(méi)有注冊(cè)!";} if(ch1=='y')s=s+"\n性別:男"; elseif(ch1=='n')s=s+"\n性別:女"; if(nj1==0)s=s+"\n一年級(jí)上"; elseif(nj1==1)s=s+"\n一年級(jí)下"; elseif(nj1==2)s=s+"\n二年級(jí)上"; elseif(nj1==3)s=s+"\n二年級(jí)下"; elseif(nj1==4)s=s+"\n三年級(jí)上"; elseif(nj1==5)s=s+"\n三年級(jí)下"; if(xb1==0)s=s+"\n信息系"; elseif(xb1==1)s=s+"\n電氣系"; elseif(xb1==2)s=s+"\n經(jīng)濟(jì)系"; elseif(xb1==3)s=s+"\n機(jī)械系"; elseif(xb1==4)s=s+"\n基礎(chǔ)部"; elseif(xb1==5)s=s+"\n國(guó)際合作部"; returns; }}6.試編寫一個(gè)Applet完整程序,用JDK1.1事件處理機(jī)制,在屏幕上顯示一個(gè)TextArea(文本域),一個(gè)按鈕,和一個(gè)Label(標(biāo)簽)。每當(dāng)用戶點(diǎn)擊按鈕時(shí),都把TextArea中被選中的文本(即反白顯示的文本)復(fù)制到Label中。importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassApplet1extendsAppletimplementsActionListener{Labeltf;TextAreata=newTextArea("\n",6,25);Buttonbt=newButton("添加"); publicvoidinit() {add(ta);add(bt); tf=newLabel("選中:");add("South",tf); bt.addActionListener(this); } publicvoidactionPerformed(ActionEvente){if(e.getActionCommand()=="添加"){ tf.setText(ta.getSelectedText()); }}}編寫一個(gè)Applet完整程序,用JDK1.1事件處理機(jī)制,在屏幕上顯示一個(gè)按鈕,按鈕的標(biāo)簽為”PushMe”,鼠標(biāo)單擊按鈕后,標(biāo)簽變?yōu)椤盤ushed”:importjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassAmlWrongextendsAppletimplementsActionListener{Buttonbtn;publicvoidinit(){btn=newButton("PushMe"); add(btn); btn.addActionListener(this);}publicvoidactionPerformed(ActionEvente) { ((Button)e.getSource()).setLabel("Pushed"); }}8.用Checkbox表示學(xué)生是否注冊(cè),CheckboxGroup表示性別,List表示年級(jí),Choice表示學(xué)生系別,監(jiān)聽(tīng)I(yíng)temEvent事件,每當(dāng)用戶改變某項(xiàng)選擇時(shí),都在Applet狀態(tài)條中提示這種修改,程序還包括一個(gè)按鈕,點(diǎn)擊時(shí),讀取當(dāng)前所有組件中的選擇并顯示在一個(gè)TextArea中。importjava.applet.*;importjava.awt.*;importjava.awt.event.*;importjava.util.*;publicclassUseComponentextendsAppletimplements ActionListener,ItemListener{charch='n',ch1='y';intnj1=0,xb1=0; Checkboxzc=newCheckbox("注冊(cè)"); CheckboxGroupsex=newCheckboxGroup(); CheckboxmaleSex=newCheckbox("男",true,sex); CheckboxfemaleSex=newCheckbox("女",false,sex); Listnj=newList(3,false); Choicexb=newChoice(); TextArearesult=newTextArea("無(wú)信息",5,30); Buttonenter=newButton("輸入"); publicvoidinit() add(zc); zc.addItemListener(this); add(maleSex); maleSex.addItemListener(this); add(femaleSex); femaleSex.addItemListener(this); add(nj);nj.add("一年級(jí)上");nj.add("一年級(jí)下"); nj.add("二年級(jí)上");nj.add("二年級(jí)下"); nj.add("三年級(jí)上");nj.add("三一年級(jí)下"); xb.addItemListener(this); nj.addItemListener(this); add(xb);xb.add("信息系");xb.add("電氣系"); xb.add("經(jīng)濟(jì)系");xb.add("機(jī)械系"); xb.add("基礎(chǔ)部");xb.add("國(guó)際合作部"); add(result); add(enter);enter.addActionListener(this); }publicvoiditemStateChanged(ItemEvente) { ItemSelectableis=e.getItemSelectable(); if(e.getItem()=="注冊(cè)")ch='y'; elsech='n'; if(is==maleSex)ch1='y'; elseif(is==femaleSex)ch1='n'; if(e.getStateChange()==ItemEvent.SELECTED)ch='y'; elseif(e.getStateChange()==ItemEvent.DESELECTED)ch='n'; if(e.getItem()=="男")ch1='y'; elseif(e.getItem()=="女")ch1='n'; if(is==nj) nj1=((List)is).getSelectedIndex(); if(is==xb)xb1=((Choice)is).getSelectedIndex(); showStatus(toString()); }publicvoidactionPerformed(ActionEvente) { result.setText(toString()); } publicStringtoString() { Strings=""; if(zc.getState()==true) s="\n該學(xué)生已注冊(cè)!"; else s="\n該學(xué)生沒(méi)有注冊(cè)!"; if(ch1=='y')s=s+"\n性別:男"; elseif(ch1=='n')s=s+"\n性別:女"; if(nj1==0)s=s+"\n一年級(jí)上"; elseif(nj1==1)s=s+"\n一年級(jí)下"; elseif(nj1==2)s=s+"\n二年級(jí)上"; elseif(nj1==3)s=s+"\n二年級(jí)下"; elseif(nj1==4)s=s+"\n三年級(jí)上"; elseif(nj1==5)s=s+"\n三年級(jí)下"; if(xb1==0)s=s+"\n信息系"; elseif(xb1==1)s=s+"\n電氣系"; elseif(xb1==2)s=s+"\n經(jīng)濟(jì)系"; elseif(xb1==3)s=s+"\n機(jī)械系"; elseif(xb1==4)s=s+"\n基礎(chǔ)部"; elseif(xb1==5)s=s+"\n國(guó)際合作部"; returns; }}9.編寫一個(gè)完整程序Test.java,要求:1.具有一組三個(gè)單選按鈕如圖,當(dāng)選擇Green按鈕時(shí),窗口底色會(huì)變成綠色,當(dāng)選擇Blue按鈕時(shí),窗口底色會(huì)變成藍(lán)色,當(dāng)選擇Yellow按鈕時(shí),窗口底色會(huì)變成黃色。2.使用JDK1.1事件處理機(jī)制。importjava.awt.*;importjava.awt.event.*;publicclassTestextendsFrameimplementsItemListener{staticTestfrm=newTest();staticCheckboxckb1=newCheckbox("Green");staticCheckboxckb2=newCheckbox("Blue");staticCheckboxckb3=newCheckbox("Yellow");publicstaticvoidmain(Stringargs[]){CheckboxGroupgrp=newCheckboxGroup();frm.setSize(200,150);frm.setTitle("ItemEvent");frm.setLayout(null);ckb1.setBounds(20,40,80,20);ckb2.setBounds(20,60,80,20);ckb3.setBounds(20,80,80,20);ckb1.setCheckboxGroup(grp);ckb2.setCheckboxGroup(grp);ckb3.setCheckboxGroup(grp);ckb1.addItemListener(frm);ckb2.addItemListener(frm);ckb3.addItemListener(frm);frm.add(ckb1);frm.add(ckb2);frm.add(ckb3);frm.setVisible(true);}publicvoiditemStateChanged(ItemEvente){if(ckb1.getState()==true)frm.setBackground(Color.green);elseif(ckb2.getState()==true)frm.setBackground(Color.blue);elsefrm.setBackground(Color.yellow);}}10.編寫HTML文件:嵌入一個(gè)名為MyHtml.class的Applet字節(jié)碼文件,其寬度為300,高度為200。<html><head><title>MyHtml</title></head><body><hr><appletcode=MyHtml.classwidth=300height=200></applet></body></html>11.編寫一個(gè)Applet程序,把攝氏溫度
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 合同范本水印去掉
- 中藥苗代銷合同范本
- 肺炎研究課題申報(bào)書
- 員工餐具采購(gòu)合同范本
- 住房調(diào)換合同范本
- 煤礦研究課題申報(bào)書
- 廚房廚具采購(gòu)合同范本
- 醫(yī)師勞動(dòng)合同范本診所
- 南昌市商品房預(yù)售合同范本
- 合伙式經(jīng)營(yíng)合同范本
- 2022年高考(全國(guó)甲卷)語(yǔ)文仿真模擬卷【含答案】
- 腸瘺治療PPT醫(yī)學(xué)課件(PPT 25頁(yè))
- 員工轉(zhuǎn)正評(píng)價(jià)表
- 道路交通事故責(zé)任認(rèn)定行政復(fù)議申請(qǐng)書范例
- 鄭州大學(xué)圖書館平立剖面效果圖
- 高效液相含量測(cè)定計(jì)算公式
- 公安機(jī)關(guān)通用告知書模板
- 《小學(xué)數(shù)學(xué)課程與教學(xué)》教學(xué)大綱
- 《手機(jī)攝影》全套課件(完整版)
- 礦井無(wú)計(jì)劃停電停風(fēng)安全技術(shù)措施
- 標(biāo)前合作合同協(xié)議書范本
評(píng)論
0/150
提交評(píng)論