大學(xué)java期末考試試題和答案_第1頁
大學(xué)java期末考試試題和答案_第2頁
大學(xué)java期末考試試題和答案_第3頁
大學(xué)java期末考試試題和答案_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、Java程序設(shè)計基礎(chǔ)期終考試試卷(模擬)(閉卷)題號一二三總分得分得分評卷人一、簡單編程題(共50分)在考試文件夾中新建一個應(yīng)用程序proj1(應(yīng)用程序的文件夾名稱為proj1),按照以下要求編寫程序代碼。1. 在程序中定義Person類,為該類編寫如下字段、構(gòu)造器、訪問器、修改器和相應(yīng)的其他方法。(20分)(1)在Person類中定義兩個字段:私有訪問權(quán)限,類型為String的name字段;私有訪問權(quán)限,類型為int的age字段。(2)在Person類中定義構(gòu)造器構(gòu)造器有兩個參數(shù),第一個參數(shù)的類型是String,名字為name。第二個的類型是int,名字是age。第一個參數(shù)的值賦給字段nam

2、e,第二個參數(shù)的值賦給字段age。(3)為Person類的兩個字段分別編寫訪問器方法,方法名稱分別為getName和getAge。getName方法返回類型為String的name字段的值;getAge方法返回類型為int的age字段的值。(4)為Person類的兩個字段分別編寫修改器方法,方法名稱分別為setName和 setAge。setName方法有一個String類型的參數(shù),方法中用該參數(shù)來設(shè)置字段name的值;setAge方法有一個int類型的參數(shù),方法中用該參數(shù)來設(shè)置字段age的值,并且保證age字段的值不能為負(fù)數(shù),如果要將age設(shè)置為負(fù)數(shù)則給出錯誤提示。(5)為Person類寫一

3、個叫做toString的方法,該方法不需要參數(shù),有返回值。它返回一個字符串,字符串中包含name字段和age字段的值,如果name字段的值是“Helen”,age字段的值是20,則返回字符串:“Name:Helen. Age:20”。2. 在程序中定義Student類,Student類繼承Person類。(10分)(1)在Student類中除了繼承其超類Person的name字段和age字段外,它還有自己的字段String類型的school,該字段的訪問權(quán)限為私有。(2)Student類的構(gòu)造器有三個參數(shù),第一個參數(shù)為name,String類型;第二個參數(shù)為age,int類型;第三個參數(shù)為sc

4、hool,String類型,這三個參數(shù)的值分別賦給三個字段name、age和school。(3)在Student類中重寫其超類Person的toString方法,要求該方法返回的字符串不僅包含超類Person中的name字段和age字段的值,而且包含子類Student中的school字段的值。如果name字段的值是“Helen”,age字段的值是20,school字段的值是“山西大學(xué)商務(wù)學(xué)院”,則返回的字符串為“School:山西大學(xué)商務(wù)學(xué)院 Name:Helen. Age:20”。3. 在程序中定義Test類,在Test類中定義一個main方法,在main方法中實現(xiàn)如下操作:(10分)(1)

5、創(chuàng)建一個Person類的對象,它的name為“John”,age為18,對象名為person1;(2)創(chuàng)建一個Student類的對象,它的name為“Helen”,age為18,school為“MIT”,對象名為stuent1;(3)分別輸出這兩個對象的相關(guān)信息(調(diào)用它們的toString方法)。4. 分別為Person類和Student類編寫文檔注釋,并生成應(yīng)用程序的類文檔。要求如下:(10分)(1)類的文檔注釋,包括類名、類的作者及版本號,作者的名字用考生的姓名標(biāo)注,版本號使用考試的日期; (2)構(gòu)造器和各個方法的文檔注釋,包括方法的名稱、構(gòu)造器和方法的功能說明,要求標(biāo)注構(gòu)造器和方法中的參

6、數(shù)及返回值,并說明參數(shù)的類型、名稱和返回值的類型。(3)文檔注釋完成后要使用BlueJ的JavaDOC工具生成應(yīng)用程序的類文檔。得分評卷人二、代碼改錯(共20分)在考試文件夾中的proj2工程中有五個類,每個類的代碼中都存在錯誤,請先在出錯的代碼處用行注釋語句標(biāo)出錯誤原因,然后修改程序代碼中的錯誤。注意:如果只改錯或者只標(biāo)出錯誤原因都只給一半分?jǐn)?shù)。得分評卷人三、綜合應(yīng)用題(共30分)考試文件夾下的proj3工程是一個關(guān)于俱樂部的應(yīng)用程序,程序中有兩個類:Club和Membership,分別代表俱樂部和俱樂部的會員。Membership類已經(jīng)完成,可以直接使用。請按照要求將Club類的功能補充完

7、整。(1)在Club類中,定義一個ArrayList類型的字段members。該字段是程序中用來保存俱樂部會員信息的容器,為此要為該容器選擇正確的元素的類型。在Club類的構(gòu)造器中,創(chuàng)建一個容器對象并賦值給這個字段。(2)俱樂部的會員是以Membership類的對象來表達的,Membership的對象包含了一個人的姓名和他加入俱樂部的年月。在Club類中實現(xiàn)join方法,一個Membership對象通過Club對象的join方法加入到Club對象的容器中去,這個join方法的聲明如下:public void join(Membership member)(3)在Club類中實現(xiàn)numberOf

8、Members方法,該方法能夠返回俱樂部的會員人數(shù),方法聲明如下:public int numberOfMembers()(4)在Club類里定義一個purge方法,方法的聲明如下:public ArrayList purge(int month, int year)purge方法能夠找出俱樂部中指定年、月加入的會員,并將找到的會員從當(dāng)前容器中移動到一個新的容器中,同時將該容器作為返回值返回。如果month參數(shù)超過了有效的范圍(112),打印出一條錯誤信息,并返回一個空容器。答案(1)public class Person private String name; private int ag

9、e; public Person(String name,int age) = name; this.age = age; public String getName() return name; public int getAge() return age; public void setName(String newName) name = newName; public void setAge(int newAge) if(newAge 0) System.out.println(newAge); else System.out.println(error); pub

10、lic String gettoString() return (Name : + name + Age: + age); (2)public class Student extends Person private String school; public Student(String name,int age,String school) super(name,age); this.school = school; public String getschool() return school; public String toString() return (school : + sc

11、hool + Name : + name + Age: + age); (3) public class Test public static void main(String args) Person person1 = new Person(John,18); Student student1 = new Student(Helen,18,MIT); System.out.println(person1.toString(); System.out.println(student1.toString(); (4) /* * 這是一個Person類 * author 白金 * version

12、 2011.12 */public class Person protected String name; protected int age; public Person(String name,int age) = name; this.age = age; public String getName() return name; public int getAge() return age; public void setName(String newName) name = newName; public void setAge(int newAge) if(new

13、Age 0) System.out.println(newAge); else System.out.println(error); public String toString() return (Name : + name + Age: + age); (5) import java.util.ArrayList;/* * Store details of club memberships. * * author (your name) * version (a version number or a date) */public class Club private ArrayList members ; /* * Constructor for objects of class Club */ public Club() members = new ArrayList(); /* * Add a new member to the clubs list of members. * param member The member object to be added. */ public void join(Membership member) members.add(member); public int numberOfMember()

溫馨提示

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

最新文檔

評論

0/150

提交評論