面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)題及參考答案_第1頁
面向?qū)ο蟪绦蛟O(shè)計復(fù)習(xí)題及參考答案_第2頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、網(wǎng)絡(luò)教育課程考試復(fù)習(xí)題及參考答案面向?qū)ο蟪绦蛟O(shè)計一、填空題:1. 創(chuàng)建類的對象時,使用運算符給對象分配內(nèi)存空間。通過來區(qū)分重載函數(shù)。3. 在子類中使用保留字_可調(diào)用被子類覆蓋的父類中的方法。4. 使用保留字可以從一個構(gòu)造方法中調(diào)用同一個類的另一個構(gòu)造方法。5. 扌由象類用修飾符定義。6. 類的數(shù)據(jù)成員的訪問權(quán)限修飾符一般為7. 訪問權(quán)限修飾符按照訪問權(quán)限的大小從大到小分別為-8. 定義類的構(gòu)造方法不能有,其名稱與名相同。9. 抽象方法是的特征是。中的所有異常都是從繼承來的。11. 對象引用中存儲的內(nèi)容是_12. 下列程序段執(zhí)行后,Stringstr1=newString(Java);Strin

2、gstr2=newString(Java);if(str2)Theyareequal);elseTheyarenotequal);輸出結(jié)果為:。13. 下面循環(huán)執(zhí)行后的sun值為intcount=0,sum=0;while(count10)sum+=count;count+;語言中關(guān)鍵字表示雙精度類型。15.保留字用于導(dǎo)入包中的類到程序中,供程序中使用。語言中繼承是用保留字表示。17. 面向?qū)ο蟪绦蛟O(shè)計中,類是指18. 對象包含和。19. 若有類定義:classBextendsA則類B是類A的。語言中,通常把可能發(fā)生異常的方法調(diào)用語句放到try塊中,并用緊跟其后的塊來捕獲和處理異常。21. 多

3、態(tài)是指。22. 聲明常量時使用修飾符。中異常拋出使用保留字。24. 一個類成員或者方法前面加上了修飾符,那說明該數(shù)據(jù)成員和方法可以直接通過類名來訪問和調(diào)用。25. 如果類成員前面沒有訪問權(quán)限修飾符,則該類成員具有訪問權(quán)限。26. 下面構(gòu)造方法是非法的a) :publicintClassA(intone)b) :publicClassB(intone,inttwo)c) :ClassC()27. 程序填空:publicvoidgetData()Stringstr=(null,”Input:”);if(“”)thrownewIOException();)28對象稱為類的。程序的源文件以為擴展名,編

4、譯后的文件以為擴展名。二、簡答題:1. 類和對象的概念和關(guān)系是什么?2. 請說明對象聲明和對象生成之間的區(qū)別,并使用內(nèi)存狀態(tài)圖舉例說明這種區(qū)別。和super兩個保留字的意義和作用是?4. 構(gòu)造器方法有什么特點和作用?5. 保留字throw和throws有什么區(qū)別?6. 將下面的while循環(huán)改寫為for循環(huán)intcount=1,sum=0;while(count=30)sum+=count;count+=3;語言編譯和執(zhí)行的過程是?8. 檢查型異常和非檢查型異常有何區(qū)別?9. 請改造下面的構(gòu)造方法,使第一個構(gòu)造方法調(diào)用第二個構(gòu)造方法。publicClassOne(intalpha)=alpha

5、;=0;publicClassOne(intalpha,intbeta)=alpha;=beta;有哪幾個訪問權(quán)限修飾符,各起到什么作用?11.請說明實例方法、類方法和構(gòu)造器方法的特點和區(qū)別三、請寫出下面的代碼段的輸出結(jié)果:Q2mainpublicstaticvoidmain(stringargs)QuestionTwoq2;q2=newQuestionTwo();();();();classQuestionTwoprivateintcount;publicvoidint()count=1;publicvoidincrement()count=count+1;publicintgetCount

6、()returncount;gradeLevel;switch(gradeLevel)case1:Gotothe101);case2:Goto202);break;case3:Goto303);case4:Goto404);break;default:default);如果變量gradeLevel在switch語句之前為以下數(shù)值,上述程序代碼段執(zhí)行后,將分別輸出什么?a) 2b) 3c) 4d) 5for(intwidth=1;width=20,width+)for(intlength=5,length=25,length+=5)x;x=width*length;(+x););輸出結(jié)果為:My

7、Exception1extendsExceptionpublicMyException1()publicMyException1(Stringmsg)super(msg);publicclassExceptionTestpublicstaticvoidf()throwsMyException1The1stlineoff();thrownewMyException1(Exception1:Originatedinf();publicstaticvoidmain(Stringargs)The1stlineofmain();tryThe2ndlineofmain();f();The3rdlineof

8、main();catch(MyException1e)The4thlineofmain();The5thlineofmain();輸出結(jié)果為:*JclassBaseBase()Base();voidm1()();classDerivedextendsBaseDerived()this(default);Derived();Derived(Stringss)voidm1()();publicclassApplication1publicstaticvoidmain(Stringargs)Baseb;b=newDerived();();輸出結(jié)果為:Shapevoiddraw()();classCi

9、rcleextendsShapevoiddraw()();classSquareextendsShapevoiddraw()();publicclassShapespublicstaticvoidmain(Stringargs)Shapes=newShape3;s0=newShape();s1=newCircle();s2=newSquare()for(inti=0;i3;i+)si.draw();輸出結(jié)果為:number=Integer.parseInt(“-30”);if(number0)thrownewException(“Nonegative”);catch(NumberFormatE

10、xceptione)notcoverttoint”);catch(Exceptione)輸出結(jié)果為:Valueinti=10;classTesterpublicstaticvoidtest(intx)x=20;publicstaticvoidtest(Valuev)=20;publicstaticvoidmain(Stringargs)Valuev1=newValue();intx=10;(x);(v1);RockRock()CreatingRock);Rock(inti)CreatingRocknumber+i);publicclassSimpleConstructorpublicstati

11、cvoidmain(Stringargs)for(inti=0;i3;i+)if(i=1)newRock();elsenewRock(i);lassBicycleRegistrationpublicstaticvoidmain(Stringargs)Bicyclebike1,bike2;bike1=newBicycle();bike2=newBicycle(“xxxx”);(Test);)+ownsabicycle.);)+alsoownsabicycle.);classBicycleprivateStringownerName;publicBicycle()ownerName=Unknown

12、;publicBicycle(Stringname)ownerName=name;publicStringgetOwnerName()returnownerName;publicvoidsetOwnerName(Stringname)ownerName=name;輸出結(jié)果為:四、編程題:1. 編寫一段Java程序代碼,用一個對話在分開的兩行中顯示兩條消息:“ICanDesign”和“AndICanProgram”。2. 編寫一個Java程序,對于給定的年份,回答“LeapYear”(閏年)或者“NotaLeapYear”(平年)。如果一個年份能被4整除,但是不能被100整除,它是閏年;如果一個

13、年份能被100整除,也能被400整除,它也是閏年。需要定義名為LeapYear的服務(wù)提供類3. 編寫一個do-while循環(huán)以計算正整數(shù)中前30個奇數(shù)的累加和。4. 編寫可以根據(jù)用戶年齡和身高給出推薦的體重的的Java程序,利用下面的公式計算出推薦的體重:recommendedWeight=(height-100+age/1O)*需要定義名為Height(身高)的服務(wù)提供類,它應(yīng)該會有可以根據(jù)身高得到推薦提供的方法。5. 請按照以下要求寫出完整的程序代碼(要求能上機編譯運行):1)創(chuàng)建一個抽象類AAbstractBase,該類至少包含一個抽象方法;2)創(chuàng)建一個類TestClass,該類繼承AA

14、bstractBase,并包含兩個構(gòu)造器方法;6. 定義一個Vehicle類,類中包含一個Person類型的數(shù)據(jù)成員owner、一個獲得owner值的訪問方法和一個設(shè)置owner值的訪問方法。定義VehicleManage個類,該類包含主方法,并在主方法中創(chuàng)建Vehicle類的對象,并調(diào)用其設(shè)置owner和獲取owner的方法。2.參考答案一、填空題:不同的參數(shù)列表、protected、包訪問權(quán)限、private8.返回值類型、類9.只有方法聲明沒有方法體11.對象的存儲地址areequal17.一個或多個相似對象的抽象描述18.數(shù)據(jù)、執(zhí)行在數(shù)據(jù)上的操作19.子類(導(dǎo)出類)21.允許一個變量指

15、向不同類的對象25.包Exception28.實例、class二、簡答題:1. 對象是系統(tǒng)中用來描述客觀事物的一個實體,它是構(gòu)成系統(tǒng)的一個基本單位。一個對象由一組屬性和對這組屬性進行操作的一組服務(wù)組成,類是具有相同屬性和服務(wù)的一組對象的集合。類是對象的模板,對象是類的實例2. 對象聲明是為對象的引用創(chuàng)建一個空間,而對象生成則是創(chuàng)建一個類的實例,即為對象分配空間,如果需要的話,其還會將對象空間的地址賦給其應(yīng)用。如Testert1;t1t1=newTester();它代表當(dāng)前對象名,可用來調(diào)用本類中另一種形成的構(gòu)造函數(shù)(應(yīng)該為構(gòu)造函數(shù)中的第一條語句),在程序中易產(chǎn)生二義性之處,應(yīng)使用this來指明

16、當(dāng)前對象;super:它引用當(dāng)前對象的直接父類中的成員,可以用來調(diào)用基類中的某一個構(gòu)造函數(shù)(應(yīng)該為構(gòu)造函數(shù)中的第一條語句,)也可以用來在基類與派生類中有相同成員定義時直接訪問父類中被隱藏的父類中成員數(shù)據(jù)或函數(shù)。4.構(gòu)造器一般用于對類進行初始化。其特點如下:a)其定義形式跟類中其他方法基本類似b)其方法名與類名完全相同(包括大小寫)。c)其在對象被創(chuàng)建時自動被Java調(diào)用,而無需用戶干預(yù)d)其沒有返回值類型。e)一個類可以定義多個構(gòu)造方法用于拋出一個異常,throws則是用于聲明未必處理的運行時異常。for(intcount=1;count=30;count+=3)sum+=count;=0;編

17、譯器將以.java為后綴名的Java源代碼文件編譯成以.class結(jié)尾的字節(jié)碼文件。Java的虛擬機再根據(jù)不同的軟硬件平臺將.class文件翻譯成機器碼文件予以執(zhí)行。8.因為編程錯誤而導(dǎo)致的異常,或者是不能期望程序捕獲的異常(解除引用一個空指針,數(shù)組越界,除零,等等),為了使開發(fā)人員免于處理這些異常,一些異常被命名為非檢查型異常(即那些繼承自RuntimeException的異常)并且不需要進行聲明,而檢查型異常如果沒有捕獲則需在方法頭部進行聲明。ClassOne(intalpha)this(alpha,0);publicClassOne(intalpha,intbeta)=alpha;=be

18、ta;:表明該成員變量和方法是共有的,能在任何情況下被訪問。protected:必須在同一包中或者該類的導(dǎo)出類中才能被訪問;private:只能在本類中訪問;缺省的為包訪問權(quán)限,在同一個包中可以訪問11.類方法前面有static保留字,其不需要創(chuàng)建類的實例,通過類名即可訪問;實例方法則為普通方法,其需要創(chuàng)建類的實例后通過實例訪問;構(gòu)造方法的名稱與類名完全相同,其在創(chuàng)建類的實例是自動執(zhí)行。三、請寫出下面的代碼段的輸出結(jié)果:2.(a)Goto202(b)Goto303Goto404(c)Goto404d)default3.51015202510203040501530456075204060801

19、002550751001254.The1stlineofman()The2ndlineofmain()The1stlineoff()Exception1:Originatedinf()The4thlineofmain()The5thlineofmain()()defaultDerived()()6.()()():NonegativeDONE8.10209.CreatingRocknumber0CreatingRockCreatingRocknumber2ownsabicycle.xxxxalsoownsabicycle.四、編程題:*JpublicclassTestpublicstaticvoidmain(Stringargs)(null,ICanDesignnAndICanProgram);classTestpublicstaticvoidmain(Stringargs)LeapYearly=newLeapYear();classLeapYearreturntrue;returntrue;publicbooleancomputeLeapYear(intyear)if(year%4=0&year%100!=0)if(year%100=0&year%400=0)returnfalse;classTestpublicstaticvoidmain(Stringargs)intsu

溫馨提示

  • 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

提交評論