版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
選擇題1、給定下列代碼:B.cla^s.super{.publicfIost.g已tlxfum(){retLirn3.0f;}3.)5.publiccla^sSubextendsSLiper{6._當(dāng).第PublicfloatgetNiun(){return4.Of:}PublicvoidgetNiun(){}PublicvoidgetNiun(doubled){}PublicdoublegetNum(floatd){retnin4.Of:}2、給定以下代碼:BTOC\o"1-5"\h\z.iriT.e匚壬日匚己3已匸3{}..3.cla^sAlphaimplementsBeta{4?St.ringt.(){5.reTLi匚口vxTestedf/;G}廠}8.9.publicclassMaini{10113T.aT.icBetage.~I~()1011returnnewAlpha();1415314153-M句定E:口匕印字符曰匸”1:二v匸;id編譯譯失敗(String[]a.rg^){EEt.碼行功g無輸出t.();System.out.pri匸匸丄n(b.());}個(gè)publicmtMAX_LENGTH=1UU;finalintMAX_LENGTH=100;finalpublicintMAX_LENGTH=100;publicfinalintMAX_LENGTH=100.4、給出以下代碼,請(qǐng)問該程序的運(yùn)行結(jié)果是什么?(B)1.classA{staticvoidfoo(inti){};}classBextendsA{voidfoo(inti){};}A第1行編譯錯(cuò)誤。B第2行編譯錯(cuò)誤C代碼編譯成功。//靜態(tài)方法不能被重寫4、有關(guān)類的說法正確的是(B)A.類具有封裝性,所以類的數(shù)據(jù)是不能被訪問的B.類具有封裝性,但可以通過類的公共接口訪問類中的數(shù)據(jù)聲明一個(gè)類時(shí),必須使用public修飾符每個(gè)類中必須有main方法,否則程序無法運(yùn)行5、將類的訪問權(quán)限設(shè)置為默認(rèn)的,貝9該成員能被(A)同一包中的類訪問B.其他包中的類訪問C.所有的類訪問D.所有的類的子類訪問6、假設(shè)下面的程序代碼都放在MyClassjava文件中,(D)程序代碼能夠編譯通過。importjava.awt.*;packagemypackage;calssMyClass{}packagemypackage;importjava.awt.*;publicclassmyClass{}intm;packagemypackage;importjava.awt.*;classMyClass{}/*Thisisacomment*/packagemypackage;importjava.awt.*;publicclassMyClass{}7、假設(shè)在java源程序文件“MyClassjava”中只含有一個(gè)類,而且這個(gè)類必須能夠被位于-個(gè)龐大的軟件系統(tǒng)中的所有java類訪問到,那么下面(C)聲明有可能是符合要求的類聲明。privateclassMyClassextendsObjectpublicclassmyclassextendsObjectpublicclassMyClassclassMyClassextendsObjectII程序分析題1、分析并完善如下程序,并寫出最后執(zhí)行結(jié)果:classPerson{Stringname="zhangsan";intage=18;doubleheight=1.75;publicPerson(){System.out.println("Person()");}publicPerson(Stringn){System.out.println("Person(Stringn)");name=n;}publicPerson(Stringn,inta,doubleh){System.out.println("Person(Stringn,inta,doubleh)");name=n;age=a;height=h;}publicvoidsayHello(){System.out.println("Hello!");}}classStudent4extendsPerson{doublescore=0;publicStudent4(){__this__("aa",10);System.out.println("Student()");}publicStudent4(Stringn,doubles){__super__(n);score=s;System.out.println("Student(Stringn,doubles)");}publicStudent4(Stringn,inta,doubleh,doubles){__this__(n,s);age=a;height=h;score=s;System.out.println("Student(Stringn,inta,doubleh,doubles)");}publicvoidstudy(){score++;}publicvoidsayHello(){__this/super__.sayHello();System.out.println("Hello,teacher!");inti=this.age;intj=super.age;}publicstaticvoidmain(Stringargs[]){Student4s4=newStudent4();__s4__.sayHello();}}2、找出程序中的錯(cuò)誤,并說明原因:publicclassFinalVar{finalinty=100;finalintx1;publicFinalVar(){x1=1;}publicstaticvoidmain(String[]args){finalintz=0;}publicvoidaa(){FinalVar.add(1);}publicstaticvoidadd(finalintx2){x2++;//錯(cuò)了final不許修改}}3、找出程序中的錯(cuò)誤,并說明原因:(finalclassFinalClass{publicvoidadd(intx){x++;}}publicclassSubFinalDemoextendsFinalClass{//不能被繼承publicvoidadd(intx){x+=2;}}4、找出程序中的錯(cuò)誤,并說明原因:classFinalClass{publicfinalvoidadd(intx){x++;x++;}}publicclassSubFinalDemoextendsFinalClass{publicvoidadd(intx){//不能在子類中被覆蓋,即不能修改。x+=2;}}Ill編程題1、如下兩個(gè)類之間存在一定的聯(lián)系,請(qǐng)用面向?qū)ο蟮奶匦詫?shí)現(xiàn)類及其關(guān)系x++;x++;x++;x++;Person電mamw:String屍津的:Ini^heightdouble^PersanQ^sayHello^)Student^name:StringStage:mtS^height:double^scor^:double?Student。*studyO*&syneiloOx++;x++;x++;x++;publicclassPerson{Stringname;intage;doubleheight;Person(){}publicvoidsayHello(){}}publicclassStudentextendsPerson{doublescore;publicvoidstudy(){}}2、(1)定義一個(gè)汽車類Vehicle,要求如下:(a)屬性包括:汽車品牌brand(String類型)、顏色color(String類型)和速度speed(double類型)。(b)至少提供一個(gè)有參的構(gòu)造方法(要求品牌和顏色可以初始化為任意值,但速度的初始值必須為0)。為屬性提供訪問器方法。注意:汽車品牌一旦初始化之后不能修改。定義一個(gè)一般方法run(),用打印語句描述汽車奔跑的功能定義測(cè)試類VehicleTest,在其main方法中創(chuàng)建一個(gè)品牌為"benz”、顏色為"black”的汽車。publicclassVehicle{privateStringbrand;privateStringcolor;privatedoublespeed;Vehicle(){}Vehicle(Stringbrand,Stringcolor){this.brand=brand;this.color=color;speed=0;}publicStringgetColor(){returncolor;}publicvoidsetColor(Stringcolor){this.color=color;}publicdoublegetSpeed(){returnspeed;}publicvoidsetSpeed(doublespeed){this.speed=speed;}publicvoidrun(){System.out.println(getColor()+"的"+getBrand()+"的速度是"+getSpeed());}publicStringgetBrand(){returnbrand;}}(2)定義一個(gè)Vehicle類的子類轎車類Car,要求如下:轎車有自己的屬性載人數(shù)loader(int類型)。提供該類初始化屬性的構(gòu)造方法。重新定義run(),用打印語句描述轎車奔跑的功能。定義測(cè)試類Test,在其main方法中創(chuàng)建一個(gè)品牌為"Honda”、顏色為"red”,載人數(shù)為2人的轎車。publicclassCarextendsVehicle{intloader;Car(){}Car(Stringbrand,Stringcolor,intloader){super(brand,color);this.loader=loader;}publicvoidrun(){System.out.println(getColor()+"的載人數(shù)"+loader+getBrand()+"的速度是"+getSpeed());}}publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubCarcar=newCar("Honda","red",2);car.run();}3、設(shè)計(jì)四個(gè)類,分別是:(1)Shape表示圖形類,有面積屬性area、周長(zhǎng)屬性per,顏色屬性color,有兩個(gè)構(gòu)造方法(一個(gè)是默認(rèn)的、一個(gè)是為顏色賦值的),還有3個(gè)抽象方法分別是:getArea計(jì)算面積、getPer計(jì)算周長(zhǎng)、showAII輸出所有信息,還有一個(gè)求顏色的方法getColor。publicabstractclassShape{doublearea;doubleper;charcolor;Shape(){}Shape(charcolor){this.color=color;}publicabstractdoublegetArea();publicabstractdoublegetPer();publicabstractvoidshowAll();publicchargetColor(){returncolor;}(2)2個(gè)子類:1)Rectangle表示矩形類,增加兩個(gè)屬性,Width表示長(zhǎng)度、height表示寬度,重寫getPer、getArea和showAll三個(gè)方法,另外又增加一個(gè)構(gòu)造方法(一個(gè)是默認(rèn)的、一個(gè)是為高度、寬度、顏色賦值的)。publicclassRectangleextendsShape{doublewidth;doubleheight;Rectangle(){}Rectangle(doublewidth,doubleheight,charcolor){super(color);this.width=width;this.height=height;}@OverridepublicdoublegetArea(){area=width*height;returnarea;}@OverridepublicdoublegetPer(){per=2*(width+height);returnper;}@OverridepublicvoidshowAll(){System.ou亡.println("長(zhǎng):"+width);System.ou亡.println("寬:"+height);System.out.println("面積:"+getArea());System.out.println("周長(zhǎng):"+getPer());System.out.println("顏色:"+getColor());}}2)Circle表示圓類,增加1個(gè)屬性,radius表示半徑,重寫getPer、getArea和showAll三個(gè)方法,另外又增加兩個(gè)構(gòu)造方法(為半徑、顏色賦值的)。}}publicclassCircleextendsShape{finaldoublepi=3.14;doubleradius;Circle(){}Circle(doubleradius,charcolor){super(color);this.radius=radius;}@OverridepublicdoublegetArea(){area=pi*radius*radius;returnarea;}@OverridepublicdoublegetPer(){per=2*pi*radius;returnper;}@OverridepublicvoidshowAll(){System.ou亡.println("半徑:"+radius);System.out.println("面積:"+getArea());System.out.println("周長(zhǎng):"+getPer());System.out.println("顏色:"+getColor());}}(3)一個(gè)測(cè)試類PolyDemo,在main方法中,聲明創(chuàng)建每個(gè)子類的對(duì)象,并調(diào)用2個(gè)子類的showAll方法。publicclassPolyDemo{publicstaticvoidmain(String[]args){Rectangler=newRectangle(1,2,'藍(lán)');Circlec=newCircle(1.2,'紅');r.showAll();System.out.println("");c.showAll();System.out.println("");4、Cola公司的雇員分為以下若干類:ColaEmployee:這是所有員工總的父類,屬性:?jiǎn)T工的姓名,員工的生日月份。方法:getSalary(intmonth)根據(jù)參數(shù)月份來確定工資,如果該月員工過生日,則公司會(huì)額外獎(jiǎng)勵(lì)100元。SalariedEmployee:ColaEmployee的子類,拿固定工資的員工。?屬性:月薪HourlyEmployee:ColaEmployee的子類,按小時(shí)拿工資的員工,每月工作超出160小時(shí)的部分按照1.5倍工資發(fā)放。屬性:每小時(shí)的工資、每月工作的小時(shí)數(shù)SalesEmployee:ColaEmployee的子類,銷售人員,工資由月銷售額和提成率決定。?屬性:月銷售額、提成率定義一個(gè)類Company,在該類中寫一個(gè)方法,調(diào)用該方法可以打印出某月某個(gè)員工的工資數(shù)額,寫一個(gè)測(cè)試類TestCompany,在main方法,把若干各種類型的員工放在一個(gè)ColaEmployee數(shù)組里,并單元出數(shù)組中每個(gè)員工當(dāng)月的工資。publicabstractclassColaEmployee{Stringname;intyear;intmonth;intday;ColaEmployee(){}ColaEmployee(Stringname,intyear,intmonth,intday){=name;this.day=day;this.month=month;this.year=year;}abstractdoublegetSalary(intmonth);}publicclassSalariedEmployeeextendsColaEmployee{doublesalary;SalariedEmployee(){}SalariedEmployee(Stringname,intyear,intmonth,intday,doublesalary){}}super(name,year,month,day);this.salary=salary;}@OverridedoublegetSalary(intmonth){if(month==this.month){salary+=100;}returnsalary;}}publicclassSalesEmployeeextendsColaEmployee{doublemonthSalary;doublerate;SalesEmployee(){}publicclassHourlyEmployeeextendsColaEmployee{doublehourSalary;inthour;HourlyEmployee(){}HourlyEmployee(Stringname,intyear,intmonth,intday,doublehourSalary,inthour){super(name,year,month,day);this.hourSalary=hourSalary;this.hour=hour;}@OverridedoublegetSalary(intmonth){doublesalary=0;if(hour<=160){salary=hour*hourSalary;}else{salary=160*hourSalary+(hour-160)*hourSalary*1.5;if(month==this.month){salary+=100;}returnsalary;}}SalesEmployee(Stringname,intyear,intmonth,intday,doublemonthSalary,doublerate){super(name,year,month,day);this.monthSalary=monthSalary;this.rate=rate;}@OverridedoublegetSalary(intmonth){doublesalary=monthSalary*rate;if(month==this.month){salary+=100;}returnsalary;}}publicclassCompany{staticvoidgetSalary(intmonth,ColaEmployeec){System.out.println(month+"月"++"的工資:"+c.getSalary(month));}}publicclassTestCompany{/***@paramargs*/publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubColaEmployee[]a=newColaEmployee[3];a[0]=newSalariedEmployee("大川",1988,2,29,3500);a[1]=newHourlyEmployee("海鷗",1988,2,29,20,200);a[2]=newSalesEmployee("abc",1988,5,10,30000,0.1);
for(ColaEmployeec:a){Company.getSalary(2,c);}}}5、利用接口實(shí)現(xiàn)動(dòng)態(tài)的創(chuàng)建對(duì)象:(1)創(chuàng)建4個(gè)類1蘋果香蕉葡萄園?。?)在三種水果的構(gòu)造方法中打印一句話.以蘋果類為例classapple{publicapple(){System.out.println("創(chuàng)建了一個(gè)蘋果類的對(duì)象")}}(3)類圖如下:<<接口>>FruitAPPlAPPlePearGardener+create():Fuit4)要求從控制臺(tái)輸入一個(gè)字符串,根據(jù)字符串的值來判斷創(chuàng)建三種水果中哪個(gè)類的對(duì)象。運(yùn)行結(jié)果如圖:ProblemsJavadocHeelerat]on^ternirLated}test[JavaApplication]C:\Pr&gr蘋果創(chuàng)矗了j豐豐果的對(duì)象publicabstractinterfaceFruit{}publicclassAppleimplementsFruit{Apple(){System.out.println(“創(chuàng)建了一個(gè)蘋果類的對(duì)象");}}publicclassBananaimplementsFruit{Banana(){System.out.println("創(chuàng)建了一個(gè)香蕉類的對(duì)象");}}publicclassPutaoimplementsFruit{Putao(){System.out.println("創(chuàng)建了一個(gè)葡萄類的對(duì)象");}}publicclassGardener{publicFruitcreat(){Fruitf=null;Scannerinput=newScanner(System.in);Stringname=input.next();if(name.equals("蘋果")){f=newApple();}elseif(name.equals("香蕉")){f=newBanana();}elseif(name.equals("葡萄")){f=newPutao();}else{System.out.println("不會(huì)種");}returnf;6、Person類,如下圖:兩個(gè)測(cè)試類,訪問該P(yáng)erson類,要求(1)TestMain和Person在相同包中test2中(2)TestMain在包testl中,Person在包test2中(知識(shí)點(diǎn):Java中包的概念)7、修改原來的Person類,將其進(jìn)行良好的封裝packagecom.neusot.test2;publicclassPerson{privateStringname;privateintage;privatedoubleheight;publicvoidperson(){}publicvoidsayHello(){}publicStringgetName(){returnname;}publicvoidsetName(Stringname){=name;}publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}publicdoublegetHeight(){returnheight;}publicvoidsetHeight(doubleheight){this.height=height;}}8、編寫三個(gè)系別的學(xué)生類:英語系,計(jì)算機(jī)系,文學(xué)系(要求通過繼承學(xué)生類)各系有以下成績(jī):英語系:演講,期末考試,期中考試;計(jì)算機(jī)系:操作能力,英語寫作,期中考試,期末考試;文學(xué)系:演講,作品,期末考試,期中考試;各系總分評(píng)測(cè)標(biāo)準(zhǔn):英語系:演講50%期末考試25%期中考試25%計(jì)算機(jī)系:操作能力40%英語寫作20%期末考試20%期中考試20%文學(xué)系:演講35%作品35%期末考試15%期中考試15%定義一個(gè)可容納5個(gè)學(xué)生的學(xué)生類數(shù)組,使用隨機(jī)數(shù)給該數(shù)組裝入各系學(xué)生的對(duì)象,然后按如下格式輸出數(shù)組中的信息:學(xué)號(hào):XXXXXXXX姓名:XXX性另|J:X年齡:XX綜合成績(jī):XXpublicabstractclassStudent{Stringname;Stringid;Stringsex;intage;doublelastScore;//期末成績(jī)doubleminScore;//期中成績(jī)Student(Stringname,Stringid,Stringsex,intage,doublelastScore,doubleminScore){=name;this.age=age;this.id=id;this.sex=sex;this.lastScore=lastScore;this.minScore=minScore;}Student(){}publicabstractdoublegetScore();//獲取最終成績(jī)publicvoidshow(){System.ou亡.println("學(xué)號(hào):"+id+"姓名:"+name+"性另U:"+sex+"年齡:"+age+"綜合成績(jī):"+getScore());}publicclassEnglishextendsStudent{doublespeekScore;English(){}English(Stringname,Stringid,Stringsex,intage,doublelastScore,doubleminScore,doublespeekScore){super(name,id,sex,age,lastScore,minScore);this.speekScore=speekScore;}publicdoublegetScore(){returnlastScore*0.25+minScore*0.25+speekScore*0.5;}}publicclassComputerextendsStudent{doublemakeScore;//操作成績(jī)doubleengScore;//英語寫作成績(jī)Computer(){}Computer(Stringname,Stringid,Stringsex,intage,doublelastScore,doubleminScore,doublemakeScore,doubleengScore){super(name,id,sex,age,lastScore,minScore);this.makeScore=makeScore;this.engScore=engScore;}@OverridepublicdoublegetScore(){//TODOAuto-generatedmethodstubreturnlastScore*0.2+minScore*0.2+engScore*0.2+makeScore*0.4;publicclassLiteratureextendsStudent{doublespeekScore;doublecomp
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度存量房購(gòu)買房屋維修保養(yǎng)合同3篇
- 二零二四年智慧農(nóng)業(yè)債權(quán)債務(wù)擔(dān)保合同3篇
- 2025年度智能電梯IC卡管理系統(tǒng)研發(fā)與購(gòu)銷合同4篇
- 2025年鋼材運(yùn)輸合同協(xié)議書-二零二四年度鋼管專用運(yùn)輸全面修訂版
- 二零二五年度出口合同履約環(huán)節(jié)的售后服務(wù)與客戶關(guān)系管理合同3篇
- 2025年度個(gè)人入股分紅合作開發(fā)合同4篇
- 2025年度電商園區(qū)租賃協(xié)議及商業(yè)活動(dòng)舉辦合同4篇
- 2025年度城市共享車輛駕駛權(quán)轉(zhuǎn)讓合同4篇
- 二零二四年木結(jié)構(gòu)建筑防火檢測(cè)與整改合同3篇
- 2025至2030年中國(guó)不銹鋼固定夾數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024年山東省泰安市高考物理一模試卷(含詳細(xì)答案解析)
- 護(hù)理指南手術(shù)器械臺(tái)擺放
- 科技進(jìn)步類現(xiàn)代軌道交通綜合體設(shè)計(jì)理論與關(guān)鍵技術(shù)公
- 五個(gè)帶頭方面談心談話范文三篇
- 互聯(lián)網(wǎng)的發(fā)展歷程
- 部編人教版五年級(jí)道德與法治下冊(cè)全冊(cè)課件(完整版)
- 廣西貴港市2023年中考物理試題(原卷版)
- 外觀質(zhì)量評(píng)定報(bào)告
- 窒息的急救解讀課件
- 下腔靜脈濾器置入術(shù)共27張課件
- 人教小學(xué)四年級(jí)上冊(cè)數(shù)學(xué)知識(shí)點(diǎn)歸納
評(píng)論
0/150
提交評(píng)論