《《JAVA程序設(shè)計(jì)》期末考試試題(三)》由會(huì)員分享,可在線閱讀,更多相關(guān)《《JAVA程序設(shè)計(jì)》期末考試試題(三)(14頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、JAVA 程序設(shè)計(jì)期末考試試題 (三)一、單項(xiàng)選擇題1、如下哪個(gè)是 Java 中的標(biāo)識(shí)符()A 、publicB、superC、3numberD、width2、如下哪個(gè)是Java中的標(biāo)識(shí)符()A、fieldname B、 superC、 3number D、 #number3、已知如下定義: String s = story; 下面哪個(gè)語句不是合法的 ( ) A 、 s += books;B、 s = s + 100;C、 int len = s.length;D、 String t = s + “abc”;4、如下哪個(gè)是Java中有效的關(guān)鍵字()A 、 name B、 helloC、 fal
2、se D、 good5、下面的代碼段執(zhí)行之后 count 的值是什么 ()int count = 1;for ( int i = 1; i z & x + z y & z + y x)System. out .println(三角形);elseSystem. out .println(不是三角形);12、下面程序段的執(zhí)行結(jié)果是 J6 5 4 3 2)int a = 2, 3, 4, 5, 6 ;for (int i = a. len gth - 1; i = 0; i-)System. out .print(ai +);三、程序閱讀題1、以下程序的輸出結(jié)果為_ Peter is仃years o
3、ld!_。public classPers on Stringname ;int age ;publicPers on( Stri ng n ame,int age) this . name = name;this . age = age;public static void main( Stri ng args) Pers on c = new Pers on(Peter , 17);System. out .println(c.name + is + c. age + years old!);2、以下程序的輸出結(jié)果為 課程號(hào):101課程名:ASP學(xué)分:3public class Cours
4、e privateStringcNumber ;privateStringcName ;privateint cUn it ;publicCourse(Str ing n umber, String n ame,int unit) eNumber = n umber;cName = n ame;cUn it = un it;public voidprin tCourse lnfo() 分:+System. out .println( cUnit );課程號(hào):+ cNumber課程名:+ cName + 學(xué)classCourseTest public static void main( Stri
5、 ng args) Course c;new Course( 101c =c.pri ntCoursel nfo();,ASP , 3);3、以下程序的輸出結(jié)果為public class Tom 湯姆貓?bào)w重:20.0斤privatefloatweight ;privatestaticStri ngname ;publicvoid setWeight(floatweight) this.weight=weight;privatevoid out() System. out.pri ntl n(n ame+體重publicstaticvoid main( Stri ng args) Tom.nam
6、e =湯姆貓“jTomcat =new Tom();cat.setWeight(20);+ weight+斤“);cat.out();電話 :661234564、以下程序的輸出結(jié)果 _姓名 :Tom 年齡:15 家庭住址 :金水區(qū) 學(xué)校:九中 _。public class Father String name , address , tel ;int age ;void outOther() System. out .print(System. out .print( 家庭住址 : + address ); 電話 : + tel );class Son extendsFather public
7、 Father(String name,intage) this . name = name;this . age = age;voidout() System. out .print( 姓名 : +name );System. out .print( 年齡 : +age );String schoolpublic Son(String name, int age) super (name, age);void out() super .out();super .outOther();public staticSon son =System. out .println( 學(xué)校: + schoo
8、l ); void main(String args) new Son( Tom , 15);son. address = 金水區(qū) son. school = 九中 son. tel son.out();661234565、下列程序的運(yùn)行結(jié)果是 _12345 public class MyClass int a = 1, 2, 3, 4, 5 ;void out() for ( int j = 0; j a. length ; j+) System. out .print( aj + );public static void main(String args) MyClass my = new
9、 MyClass(); my.out();四、簡(jiǎn)答題1、簡(jiǎn)述 Java 中異常處理的機(jī)制? 答:首先Java的異常是面向?qū)ο蟮?。一個(gè) Java的Exception是一個(gè)描述異常情 況的對(duì)象.當(dāng)出現(xiàn)異常情況時(shí),一個(gè)Exception對(duì)象就產(chǎn)生了,并放到異常的成員函 數(shù)里。Java的異常處理是通過 5個(gè)關(guān)鍵詞來實(shí)現(xiàn)的:try,catch,throw,throws和fin ally。1. 異常處理:在Java語言的錯(cuò)誤處理結(jié)構(gòu)由try,catch, finally三個(gè)塊組成。 其中try塊存放將可能發(fā)生異常的Java語言,并管理相關(guān)的異常指針;catch塊 緊跟在 try 塊后面,用來激發(fā)被捕獲的異
10、常; finally 塊包含清除程序沒有釋放的 資源,句柄等。不管 try 塊中的代碼如何退出,都將執(zhí)行 finally 塊。2. 拋出異常:Java語言可以不在方法中直接捕獲,而用throw語句將異常拋 給上層的調(diào)用者。Throw語句就是來明確地拋出一個(gè)異常; 首先你必需得到一個(gè) Throwable的實(shí)例句柄,通過參數(shù)傳到 catch中,或者采用new操作符來創(chuàng)建一 個(gè)。2、什么是繼承?答:通過必要的說明能夠?qū)崿F(xiàn)某個(gè)類無需重新定義就擁有另一個(gè)類的某些屬性和 方法,并把這種關(guān)系稱為繼承,先定義的類稱為父類,后定義的類稱為子類,并且允許多層的繼承關(guān)系3、請(qǐng)簡(jiǎn)述重載和重寫的區(qū)別?答:方法的重寫Ov
11、erriding和重載Overloading是Java多態(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 的方法是可以改變 返回值的類型。五、程序設(shè)計(jì)題1、按以下要求編
12、寫程序(1) 創(chuàng)建一個(gè) Rectangle類,添加 width和height兩個(gè)成員變量 在Rectangle中添加兩種方法分別計(jì)算矩形的周長(zhǎng)和面積 (3)編程利用Rectangle輸出一個(gè)矩形的周長(zhǎng)和面積解答:public class Rectangle float width , height ;public Rectangle( float width, float height) this . width = width;this . height = height;public float getLength()return ( this . width + this . heigh
13、t ) * 2;public float getArea()return this . width * this . height ;public static void main(String args) Rectangle rect =new Rectangle(10, 20);System.out .println(System.out .println( 周長(zhǎng)是: + rect.getLength(); 面積是: + rect.getArea();run()方法public static Bird bird = bird.run();Fish fish = fish.run();new
14、 Fish();2、按以下要求編寫程序(1) 編寫 Animal 接口,接口中聲明 run() 方法(2) 定義 Bird 類和 Fish 類實(shí)現(xiàn) Animal 接口(3) 編寫 Bird 類和 Fish 類的測(cè)試程序,并調(diào)用其中的 解答:public interface Animal void run();class Bird implements Animal public void run() System. out .println( 鳥兒在飛 . );class Fish implements Animal public void run() System. out .println
15、( 魚兒在游 . );public class TestAnimal void main(String args) new Bird();3、編寫一個(gè)Frame框架應(yīng)用程序,要求如下:關(guān)閉(1) 在窗口設(shè)置兩個(gè)菜單 “文件 ”、 “編輯”(2) 在“文件”菜單里添加三個(gè)菜單項(xiàng) “打開 ”、 “保存”、(3) 在“編輯”菜單里添加兩個(gè)菜單項(xiàng) “復(fù)制 ”、 “粘貼”(4) 點(diǎn)擊關(guān)閉菜單項(xiàng)時(shí),使程序關(guān)閉。解答:import java.awt.Color;import java.awt.Frame;importjava.awt.Menu;importjava.awt.MenuBar;importjav
16、a.awt.MenuItem;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.WindowAdapter;importjava.awt.event.WindowEvent;/* 主窗體*/public class MyFrame extends Frame privatestatic finallong serialVersionUID= 6895463895656626294L;privateFrame frmMain ;/窗體MenuBarmb;/菜單欄Men
17、u mnuFile ;/ 文件 菜單Menu mnuEdit ;/ 編輯 菜單MenuItemmiOpen ;/ 打開 菜單項(xiàng)MenuItemmiSave ;/ 保存 菜單項(xiàng)MenuItemmiClose ;/ 關(guān)閉 菜單項(xiàng)MenuItemmiCopy ;/ 復(fù)制 菜單項(xiàng)MenuItemmiPaste ;/ 粘貼 菜單項(xiàng)public MyFrame() frmMain = new Frame( 主窗體 );/ 創(chuàng)建菜單欄mb = new MenuBar();/ 創(chuàng)建菜單mnuFile = new Menu( 文件 );mnuEdit = new Menu( 編輯 );/ 創(chuàng)建菜單項(xiàng)miOpen
18、 = new MenuItem( 打開 ); miSave = new MenuItem( 保存 ); miClose = new MenuItem( 關(guān)閉 ); miCopy = new MenuItem( 復(fù)制 ); miPaste = new MenuItem( 粘貼 );public void showFrame() frmMain .setSize(800, 600);frmMainfrmMainfrmMain.setLocation(100, 100);.setBackground(Color.setVisible( true );white );frmMain.setLayout
19、( null );frmMain.addWindowListener(new WindowHandler();/ 注冊(cè)窗口監(jiān)聽器/ 將菜單欄放入窗體中 frmMain .setMenuBar(/ 將菜單放入菜單欄中 mb.add( mnuFile ); mb.add( mnuEdit );/ 將菜單項(xiàng)放入菜單中mnuFile.add(miOpenmnuFile.add(miSavemnuFile.add(miClosemnuEdit.add(miCopymnuEdit.add(miPaste);););););mb);/ 注冊(cè)動(dòng)作事件監(jiān)聽器 miClose .setActionCommand(
20、 miClose .addActionListener();new MenuHandler();miClose_Clicked/ 定義一個(gè)內(nèi)部類,在這個(gè)類中編寫窗口關(guān)閉事件處理程序。 private class WindowHandler extends WindowAdapter public void windowClosing(WindowEvent e) System. exit (0); / 退出應(yīng)用程序,狀態(tài)碼 0 表示正常終止,非 0 表示異常終止。定義一個(gè)內(nèi)部類,在這個(gè)類中編寫動(dòng)作事件處理程序。private class MenuHandler implements ActionListener /public void actionPerformed(ActionEvent e) if (e.getActionCommand() =System. exit (0); / 退出應(yīng)用程序miClose_Clickedpublic class TestMyFrame public static void main(String args) / 啟動(dòng)主窗體MyFrame guiWindow = new MyFrame(); guiWindow.showFrame();