Java 綜合實驗及練習(xí)(參考答案)_第1頁
Java 綜合實驗及練習(xí)(參考答案)_第2頁
Java 綜合實驗及練習(xí)(參考答案)_第3頁
Java 綜合實驗及練習(xí)(參考答案)_第4頁
Java 綜合實驗及練習(xí)(參考答案)_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Java實驗 綜合實驗及練習(xí)第一部分:編程題1、編寫程序?qū)崿F(xiàn)輸入整數(shù)n,輸出如下所示由數(shù)字組成的菱形。(圖中n=5) 11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2 11 2 11 2.給出年、月、日,計算該日是該年的第幾天?3、利用求素數(shù)的方法,就62000000之間的所有偶數(shù)驗證歌德巴赫猜想: 任何一個大于6的偶數(shù)可以分解為兩個素數(shù)之和。4、現(xiàn)有15位選手參加比賽,有6個評委每個評委都要給每位選手打分,分數(shù)為60100分,現(xiàn)需要定義二維數(shù)組存儲選手成績,每行存儲一位選手打分情況,要求輸出選手得分以

2、及選手最后得分,以及選手名次。 評分規(guī)則:分數(shù)為60100分。選手最后得分為:去掉一個最高分和一個最低分后其余4個分數(shù)的平均值。5、設(shè)計一個描述二維平面上點的類Position,該類需要描述點的橫坐標(biāo)和縱坐標(biāo),并提供屬性的set/get訪問器方法和計算兩點間距離的方法。寫一個程序測試這個類6、設(shè)計一個表示二維平面上點的類Point,包含有表示坐標(biāo)位置的protected類型的成員變量x和y,獲取和設(shè)置x 和y值的public方法。設(shè)計一個表示二維平面上圓的類Circle,它繼承自類Point,還包含有表示圓半徑的protected類型的成員變量r、獲取和設(shè)置r值的public方法、計算圓面積的

3、public方法。7、編寫一個完整的Java Application 程序。包含接口Shape,MyRectangle類,MyTriangle類及Test類,具體要求如下:、接口Shape:double area():求一個形狀的面積 double perimeter ():求一個形狀的周長、類 MyRectangle:實現(xiàn)Shape接口,并有以下屬性和方法: 屬性width: double類型,表示矩形的長height: double類型,表示矩形的高 方法MyRectangle(double w, double h):構(gòu)造函數(shù) ToString()方法 :輸出矩形的描述信息,如“

4、width=1.0,height=2.0, perimeter=6.0, area=2.0”、類MyTriangle:實現(xiàn)Shape接口,并有以下屬性和方法: 屬性x,y,z: double型,表示三角形的三條邊s: 周長的1/2(注:求三角形面積公式為,s=(x+y+z)/2 ,開方可用Math.sqrt(double)方法) 方法MyTriangle(double x, double y, double z):構(gòu)造函數(shù),給三條邊和s賦初值。ToString():輸出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”、Test

5、類作為主類要完成測試功能 生成MyRectangle對象 調(diào)用對象的ToString方法,輸出對象的描述信息8 完成以下窗體制作參考:這一題考慮使用組合布局,將上面控件放置在 JPanel上,再將JPanel放到內(nèi)容面板的中間。下面四個按鈕先放在某JPanel再放置在內(nèi)容面板的 South部分9、以JDBC技術(shù)創(chuàng)建一個通訊錄應(yīng)用程序,要求通訊錄中必須含有編號、姓名,性別、電話、地址、Email等等。實現(xiàn)該類并包含添加、刪除、修改、按姓名查等幾個方法。編寫主程序測試。 參考如下:第一步:編寫一個Person聯(lián)系人類public class Person private int pid; /編號p

6、rivate String name;/ 姓名 private String sex;/ 性別 private String tel;/ 電話 private String address;/ 地址 private String email;/email /*構(gòu)造函數(shù)以及set-get函數(shù)*/ 第二步:編寫一個PersonDao封裝對聯(lián)系人類的有關(guān)操作public class PersonDao / 添加 聯(lián)系人public void addPerson(Person p) String sql=”; DBHelper. executeUpdate(sql); / 通過人的編號刪除 聯(lián)系人pu

7、blic void deletePersonByID(int pid) String sql=”delete from person where pid=”+pid; DBHelper. executeUpdate(sql);/通過人的姓名查找聯(lián)系人,返回一個集合public List<Person> queryPersonByName(String name) . /. 其余方法 第三步:編寫一個測試Swing類,有界面使用JTable顯示,參考書本上關(guān)于JTable控件的使用,參考界面如下public class TestFrm extends JFrame 第二部分:選擇題1

8、、下面關(guān)于變量及其作用范圍的陳述哪個是不對的?( )A實例變量是類的成員變量。B實例變量用關(guān)鍵字static聲明。C在方法中定義的局部變量在該方法被執(zhí)行時創(chuàng)建。D局部變量在使用前必須被初始化。2、下面哪條語句把方法聲明為抽象的公共方法?( )Apublic abstract method();Bpublic abstract void method();Cpublic abstract void method()Dpublic void method() extends abstract;3、若在某一個類定義中定義有如下的方法: final void aFinalFunction( );則該方

9、法屬于( )。A、本地方法 B、靜態(tài)方法 C、最終方法 D、抽象方法4、在Java中,一個類可同時定義許多同名的方法,這些方法的形式參數(shù)個數(shù)、類型或順序各不相同,傳回的值也可以不相同。這種面向?qū)ο蟪绦虻奶匦苑Q為( )。A、隱藏 B、覆蓋 C、重載 D、Java不支持此特性5、在Java applet程序中,用戶自定義的Applet子類常常覆蓋父類的( )方法來完成applet界面的初始化工作。A、start( ) B、stop( ) C、init( )D、paint( )6、下列關(guān)于構(gòu)造方法的敘述中,錯誤的是(   )AJava語言規(guī)定構(gòu)造方法名與類名必須相同BJava語言

10、規(guī)定構(gòu)造方法沒有返回值,但不用void聲明CJava語言規(guī)定構(gòu)造方法不可以重載DJava語言規(guī)定構(gòu)造方法只能通過new自動調(diào)用7、關(guān)于被私有訪問控制符private修飾的成員變量,以下說法正確的是(  )A可以被三種類所引用:該類自身、與它在同一個包中的其他類、在其他包中的該類的子類B可以被兩種類訪問和引用:該類本身、該類的所有子類C只能被該類自身所訪問和修改D只能被同一個包中的類訪問8、執(zhí)行完以下代碼int   x = new int10;后,以下哪項說明是正確的(        )Ax9為0 

11、; Bx9未定義 Cx10為0 Dx0為空9、類Test1定義如下:1. public class Test12 public float aMethod(float a, float b) 34 將以下哪種方法插入行3是不合法的。( )A、public float aMethod(float a, float b,float c) B、public float aMethod(float c,float d) C、public int aMethod(int a, int b) D、private float aMethod(int a,int b,int c) 10、以

12、下哪個接口的定義是正確的?( )A、  interface A void print() ;B、  abstract interface A void print() ;C、  abstract interface A extends I1, I2 / I1、I2為已定義的接口 abstract void print() ;D、  interface A void print();11、關(guān)于以下程序段,正確的說法是( )1  String  s1=“a”+“b”;2   String 

13、 s2=new  String(s1);3    if(s1=s2)4       System.out.println(“= =  is succeeded”);5     if (s1.equals(s2)6        System.out.println(“.equals() is succeeded”);A行4與行6都將執(zhí)行       

14、;         B行4執(zhí)行,行6不執(zhí)行C行6執(zhí)行,行4不執(zhí)行              D行4、行6都不執(zhí)行12、下面哪個函數(shù)是public void  aMethod().的重載函數(shù)?()A、void  aMethod( ).B、public int  aMethod().C、public void  aMethod ( ).D、public int  aMethod (

15、 int m).13、下面關(guān)于繼承的哪些敘述是正確的? ( )A在java中允許多繼承。 B 在java中一個類只能實現(xiàn)一個接口。 C 在java中一個類不能同時繼承一個類和實現(xiàn)一個接口。 D java的單一繼承使代碼更可靠。14、關(guān)于length()這個方法的表述正確的是哪個? ( )A數(shù)組有l(wèi)ength()這個方法,string也有l(wèi)ength()這個方法。 B數(shù)組有l(wèi)ength()有這個方法,string沒有l(wèi)ength()這個方法。C數(shù)組沒有l(wèi)ength()這個方法,string有l(wèi)ength()這個方法。D數(shù)組沒有l(wèi)ength()這個

16、方法,string也沒有l(wèi)ength()這個方法。15、選擇排序的思想是,將數(shù)據(jù)序列劃分為兩個子列,一個子列是排好序的,另一個是尚未排序的?,F(xiàn)若想將數(shù)據(jù)序列由小到大排序,則每次放到有序子列尾部位置的元素,應(yīng)從無序序列中選擇( )。A)最大的 B)最小的 C)任意的 D)頭上的16、類與對象的關(guān)系是( )。 A. 類是對象的抽象 B. 類是對象的具體實例 C. 對象是類的抽象 D. 對象是類的子類17、下列關(guān)于修飾符混用的說法,錯誤的是( ) A. abstract不能與final并列修飾同一個類 B. abstract類中不可以有private的成員 C. abstract方法必須在abstr

17、act類中 D. static方法中能處理非static的屬性18、編譯并運行下述程序段的結(jié)果是:( )。public class Test public static void main(String argv) int count = new int4; System.out.println(count4);A編譯時錯誤B運行時錯誤C輸出0D輸出null19、下面是有關(guān)子類繼承父類構(gòu)造函數(shù)的描述,其中正確的是( )。A創(chuàng)建子類的對象時, 先調(diào)用子類自己的構(gòu)造函數(shù),然后調(diào)用父類的構(gòu)造函數(shù)。B子類無條件地繼承父類不含參數(shù)的構(gòu)造函數(shù)。C子類必須通過super關(guān)鍵字調(diào)用父類的構(gòu)造函數(shù)。D子類無法繼

18、承父類的構(gòu)造函數(shù)。20、下面哪個不是String類的方法?( )A、 subString()B、 startsWith()C、 toString()D、 toUpperCase() 21、 編譯并運行以下程序段的結(jié)果是:( ) public class MyClassfinal static int i;MyClass()i =0;public static void main(String args)System.out.println(i);A、 編譯出錯B、 nullC、 1D、 022、下面關(guān)于java中類的說法哪個是不正確的?( )A、類體中只能有變量定義和成員方法的定義,不能有其他

19、語句。B、構(gòu)造函數(shù)是類中的特殊方法。C、類一定要聲明為public的,才可以執(zhí)行。D、一個java文件中可以有多個class定義。23、下列哪個類聲明是正確的? ( ) A、 abstract final class H1B、 abstract private move()C、 protected private number;D、 public abstract class Car24、方法重載是指 ( ) A.兩個或兩個以上的方法取相同的方法名,但形參的個數(shù)或類型不同B.兩個以上的方法取相同的名字和具有相同的參數(shù)個數(shù),但形參的類型可以不同C.兩個以上的方法名字不同,但形參的個數(shù)或類型相同D

20、.兩個以上的方法取相同的方法名,并且方法的返回類型相同 25、Frame的默認的布局管理器是下列哪一個? ( ) A.FlowLayoutB.BorderLayout C.GridLayoutD.CardLayout26、下面的哪個用戶界面組件不是容器? ( )A. JScrollPaneB. JFrameC. JWindowsD. JScrollBar27、在下列事件處理機制中哪個不是機制中的角色? ( 無 ) A. 事件B. 事件源C. 事件接口D. 事件處理者28.欲構(gòu)造ArrayList類的一個實例,此類繼承了List接口,下列哪個方法是正確的 ?( ) A、 ArrayList my

21、List=new Object(); B、 List myList=new ArrayList(); C、 ArrayList myList=new List(); D、 List myList=new List();29器被重新設(shè)置大小后,哪種布局管理器的容器中的組件大小不隨容器大小的變化而改變? ( )A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 30個關(guān)鍵字可以對對象加互斥鎖? ( )A、 transient B、 synchronized C、 serialize D、 static 31Teacher和Studen

22、t是類Person的子類; Person p; Teacher t; Student s; /p, t and s are all non-null. if(t instanceof Person) s = (Student)t; 最后一句語句的結(jié)果是: ( )A、 將構(gòu)造一個Student對象; B、 表達式是合法的; C、 表達式是錯誤的; D、 編譯時正確,但運行時錯誤。 32行下列程序, 會產(chǎn)生什么結(jié)果 ( 自己 )public class X extends Thread implements Runable public void run() System.out.println(

23、"this is run()"); public static void main(String args) Thread t=newThread(new X(); t.start(); A、 in the Inner outer B、 outer C、 in the Inner D、編譯不通過 33下面哪個是對字符串String的正確定義 ( )A、String s1=null;B、String s2=null ;C、String s3=(String) abc ;D、String s4=(String) uface;34下面哪條語句定義了5個元素的數(shù)組( )A、int

24、a=22,23,24,25,12;B、int a =new int(5);C、int 5 array;D、int arr;35給出一段程序,選擇運行結(jié)果public class sss public static void main(String args)String s1=args1; String s2=args2;String s3=args3; String s4=args4;System.out.println(“args2=”+s2);命令行執(zhí)行: java sss 1 2 3 4 結(jié)果是下面哪一個?( )A、args2=2B、args2=nullC、args2=1D、運行出現(xiàn)異

25、常36下面哪個描述是正確的( )A、Applet程序中不需要main()方法,也不能有B、Application程序中可以沒有main()方法。C、Applet程序中可以不定義init( )方法D、Application程序中必須有run( )方法37給出一段程序,試判斷哪個是正確的結(jié)果( )public class rtExceptpublic static void throwit()System.out.print(“throwit”); throw new RuntimeException(); public static void main(String aa)trySystem.o

26、ut.print(“hello “);throwit(); catch(Exception re)System.out.print(“caught ”); finallySystem.out.print(“finally ”); System.out.print(“after ”);A、hello throwit caughtB、hello throwit caught finally after C、hello throwit RuntimeException afterD、hello throwit caught finally after RuntimeException38下面哪個描述

27、是正確的( )A、Applet程序中不需要main()方法,也不能有B、Application程序中可以沒有main()方法。C、Applet程序中可以不定義init( )方法D、Application程序中必須有run( )方法39面哪個修飾符修飾的變量是所有同一個類生成的對象共享的( )A、publicB、privateC、staticD、final40面關(guān)于java中類的說法哪個是不正確的( )A、類體中只能有變量定義和成員方法的定義,不能有其他語句。B、構(gòu)造函數(shù)是類中的特殊方法。C、類一定要聲明為public的,才可以執(zhí)行。D、一個java文件中可以有多個class定義。41下面程序運

28、行后的輸出結(jié)果為( )class Astatic int y=3; void showy( )System.out.println(“y=”+y); class testApublic static void main(String aaa ) A a1=new A( ); A.y+=1; a1.y+; a1.showy( );輸出結(jié)果選擇:A、y=3;B、y=4;C、y=5;D、程序運行出錯43在java的一個異常處理中,哪個語句塊可以有多個 ( )A、catchB、finallyC、tryD、throws44果希望所有的控件在界面上均勻排列,應(yīng)使用下列那種布局管理器?( )A、BoxLay

29、out B、GridLayout C、BorderLayout D、FlowLouLayout45給出如下代碼:class Testprivate int m;public static void fun() / some code.如何使成員變量m 被函數(shù)fun()直接訪問? ( ) A、將private int m 改為protected int m B、將private int m 改為 public int m C、將private int m 改為 static int m D、將private int m 改為 int m45 AB類的一個無形式參數(shù)無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調(diào)用它,該方法頭的形式為( )。 A. static void method( ) B. public voidmethod( ) C. final void method( ) D. abstract void method( ) 4

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論