《JAVA程序設(shè)計(jì)》期末考試試題(三)
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、 false D、 good5、下面的代碼段執(zhí)行之后 count 的值是什么 ()int count = 1;for ( int i = 1; i <= 5; i+) count += i;System. out .println(count);A 、 5B、 1C、 15 D、 166、定義一個(gè)類,必須使用的關(guān)鍵字是 ( )A 、 publicB、 classC、 interfaceD、 static7、 定義一個(gè)接口必須使用的關(guān)鍵字是()A 、 publicB、 classC、 interfaceD、 static8、 如果容器組件p的布局是BorderLayout,則在p的下邊中添加一個(gè)按鈕 b, 應(yīng)該使用的語句是( )A 、 p.add(b);C、 p.add(b,"South");B、p.add(b,"North");D、 b.add(p,"North");9、聲明并創(chuàng)建一個(gè)按鈕對(duì)象b,應(yīng)該使用的語句是()A、 Butt on b=new Butt on();B、 butt on b=new butt on();C、Butt on b=new b();D、b.setLabel(確定”;10、Frame對(duì)象默認(rèn)的布局管理器是()A、FlowLayoutB、BorderLayoutC、CardLayoutD、null11、下列哪一個(gè)import命令可以使我們?cè)诔绦蛑袆?chuàng)建輸入/輸出流對(duì)象()A、import java.sql.*;B、import java.util.*;C、import java.io.*;D、import .*;12、下面哪一個(gè)import命令可以為我們提供編寫網(wǎng)絡(luò)應(yīng)用程序的類()A、import java.sql.*;B、import java.util.*;C、import java.io.*;D、import .*;13、如果需要從文件中讀取數(shù)據(jù),則可以在程序中創(chuàng)建哪一個(gè)類的對(duì)象()A、FileInputStreamB、FileOutputStreamC、DataOutputStreamD、FileWriter二、填空題1、如果將類MyClass聲明為public,它的文件名稱必須是 JMyClass.javaL才能 正常編譯。2、 Java程序中的單行注釋符是(/),多行注釋符是(/* */)03、Java中布爾類型的常量有兩種,它們是(true)和(false)。4、 Java中用于定義小數(shù)的關(guān)鍵字有兩個(gè):(float)和(double),后者精度高 于前者。5、 Java中用于兩個(gè)數(shù)相等比較的運(yùn)算符是:(=),用于不相等比較的運(yùn)算符是()。6在Java中定義一個(gè)字符串類型的變量 str的語句是:(String str _,定義一 個(gè)具有10個(gè)元素的整型數(shù)組 a的語句是:(int arr = new int10;)_。7、導(dǎo)入mypackage包中的所類的命令是 import mypackage.*;_J。8、當(dāng)聲明一個(gè)數(shù)組int arr = new int5;時(shí),這代表這個(gè)數(shù)組所保存的變量類型 是(int),數(shù)組名是(arr),數(shù)組的大小為(5),數(shù)組元素下標(biāo)的使用范圍是(0 到4)。9、假設(shè)x=13, y=4,則表達(dá)式x%y != 0的值是(true),其數(shù)據(jù)類型是(boolear)10、異常處理是由(try )、( catch)和fin ally塊三個(gè)關(guān)鍵所組成的程序塊。11、以下程序段的輸出結(jié)果是(三角形)int x = 5, y = 6, z = 4;if (x + y > 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 old!_。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 Course 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 ng args) Course c;new Course( "101"c =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.name ="湯姆貓“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 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é)校: " + school ); void main(String args) new Son( "Tom" , 15);son. address = " 金水區(qū) " son. school = " 九中 "son. tel son.out();"66123456"5、下列程序的運(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 MyClass(); my.out();四、簡答題1、簡述 Java 中異常處理的機(jī)制? 答:首先Java的異常是面向?qū)ο蟮摹R粋€(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ā)被捕獲的異常; 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)簡述重載和重寫的區(qū)別?答:方法的重寫Overriding和重載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、按以下要求編寫程序(1) 創(chuàng)建一個(gè) Rectangle類,添加 width和height兩個(gè)成員變量 在Rectangle中添加兩種方法分別計(jì)算矩形的周長和面積 (3)編程利用Rectangle輸出一個(gè)矩形的周長和面積解答: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 . height ) * 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(" 周長是: " + rect.getLength();" 面積是: " + rect.getArea();run()方法public static Bird bird = bird.run();Fish fish = fish.run();new 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(" 魚兒在游 ." );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;importjava.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;/菜單欄Menu 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 = 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( 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( 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_Clicked"public class TestMyFrame public static void main(String args) / 啟動(dòng)主窗體MyFrame guiWindow = new MyFrame(); guiWindow.showFrame();