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

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

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

5、創(chuàng)建一個(gè)Person類(lèi)的對(duì)象,它的name為“John”,age為18,對(duì)象名為person1;(2)創(chuàng)建一個(gè)Student類(lèi)的對(duì)象,它的name為“Helen”,age為18,school為“MIT”,對(duì)象名為stuent1;(3)分別輸出這兩個(gè)對(duì)象的相關(guān)信息(調(diào)用它們的toString方法)。4. 分別為Person類(lèi)和Student類(lèi)編寫(xiě)文檔注釋?zhuān)⑸蓱?yīng)用程序的類(lèi)文檔。要求如下:(10分)(1)類(lèi)的文檔注釋?zhuān)?lèi)名、類(lèi)的作者及版本號(hào),作者的名字用考生的姓名標(biāo)注,版本號(hào)使用考試的日期; (2)構(gòu)造器和各個(gè)方法的文檔注釋?zhuān)ǚ椒ǖ拿Q(chēng)、構(gòu)造器和方法的功能說(shuō)明,要求標(biāo)注構(gòu)造器和方法中的參

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

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

8、Members方法,該方法能夠返回俱樂(lè)部的會(huì)員人數(shù),方法聲明如下:public int numberOfMembers()(4)在Club類(lèi)里定義一個(gè)purge方法,方法的聲明如下:public ArrayList purge(int month, int year)purge方法能夠找出俱樂(lè)部中指定年、月加入的會(huì)員,并將找到的會(huì)員從當(dāng)前容器中移動(dòng)到一個(gè)新的容器中,同時(shí)將該容器作為返回值返回。如果month參數(shù)超過(guò)了有效的范圍(112),打印出一條錯(cuò)誤信息,并返回一個(gè)空容器。答案(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) /* * 這是一個(gè)Person類(lèi) * 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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論