類和對(duì)象練習(xí)題答案_第1頁
類和對(duì)象練習(xí)題答案_第2頁
類和對(duì)象練習(xí)題答案_第3頁
類和對(duì)象練習(xí)題答案_第4頁
類和對(duì)象練習(xí)題答案_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、類和對(duì)象一、選擇題1-5 DBACD16-20 ADABD21-25 AAABC36-40 CAADD41-45 BDDBD56-60 DCCDB61-65 CBDDC二、填空題1、new6-10 DCABC11-15 DCBBB26-30 ADBDB31-35 ACCCA46-50 DCBCA51-55 DBBCB66-70 BDADC71-73 DDB類名 對(duì)象名=new 構(gòu)造方法名()2、MyClass obj = new MyClass() 3、封裝繼承多態(tài)4、初始化5、成員變量成員方法6、sic7、java.io 8、Object 9、public 10、private 11、類12

2、、class13、成員變量14、方法頭15、名字16、方法體17、修飾符18、對(duì)象19、編輯窗口20、類21、成員變量22、類java.awtjava.applet方法體類型返回值關(guān)鍵字類名花括號(hào)方法23、類對(duì)象24、實(shí)例化類25、對(duì)象的26、對(duì)象27、初始化對(duì)象的實(shí)例化對(duì)象的初始化28、構(gòu)造方法29、對(duì)象30、構(gòu)造方法31、構(gòu)造方法32、類同名33、包34、.35、publicabstractfinal36、修飾符 s量名icfinaltransientvolatile變37、創(chuàng)建使用38、默認(rèn) protected清除public39、Objectjava.awt.Panel 40、類變量4

3、1、多重 42、Object三、程序填空1、x=02、What a pleasure!I am TomHow do you do?3、falsetrue true true true true4、1,2,3,4,52,4,6,8,10java.applet5、go through finally code in fun2().catyException object. Message:An MyException objectis thrown in fun1().6、Myclass 7、Studenti Stringj8、max(1234,456,-987)9、count is101 tim

4、e is010、Before swap:circle1 = 1.0circle2 = 2.0Before swap: Before swap: After swap:11、i + j is 23 k is 2j is 0 x = 1.0 x = 2.0y = 2.0y = 1.0circle1 = 1.0circle2 = 2.012、The default constructor of A is invoked The default constructor of B is invoked13、class Aclass B class A class B class B class B cl

5、ass B14、i=0j=0i=0 15、NO514m=316、長(zhǎng)度=3體積=6017、父類 SuperClass 成員變量、10,20 子類 SubClass 成員變量、10,20,null18、ma aain=a ain=3est2 is : 98return from test2 : 98.0 m + a=100.019、main( )中的 i=456m1( )中的 i=789類變量 i=123加 6 后的類變量 i=12920、good-byeo21、22pile time error、23、super.oak=1;oak=33; Base.oak=22;四、問答題1、繼承是面象程序設(shè)

6、計(jì)中兩個(gè)類之間的一種關(guān)系。當(dāng)一個(gè)類獲取另一個(gè)類中所有非私有的數(shù)據(jù)和操作的定義作為它自己的部分或全部成分時(shí),就稱這兩個(gè)類之間具有繼承關(guān)系。被繼承的類稱為父類或超類,繼承了父類或超類的所有數(shù)據(jù)和操作的類稱為子類。面象程序設(shè)計(jì)中的繼承,可使得程序結(jié)構(gòu)更加清晰,降低了編碼和的工作量。如果一個(gè)類只能有一個(gè)父類,則這種繼承關(guān)系稱為單重繼承;如果一個(gè)類可以有多個(gè)父類,則這種繼承關(guān)系稱為多重繼承。2、Java 中使用 sic 修飾的變量和方法稱為類變量(或稱靜態(tài)變量)和類方法(或稱靜態(tài)方法),沒用 sic 修飾符的變量和方法稱為實(shí)例變量和實(shí)例方法。類成員是指該成員屬于這個(gè)類,由這個(gè)類所創(chuàng)建的所有對(duì)象共同擁有,

7、該成員僅在類的單元中存在,這個(gè)類所創(chuàng)建的所有對(duì)象中僅一個(gè)指向該成員的。任何一個(gè)該類的對(duì)象改變了類成員,其他對(duì)象同樣會(huì)發(fā)生改變。對(duì)于類成員既可以使用對(duì)象訪問,也可以使用類名直接進(jìn)行,并且在類方法中只能訪問類 變量,而不能實(shí)例變量。實(shí)例成員是指該成員由每一個(gè)對(duì)象獨(dú)有,對(duì)象的空間中的確有一塊空間用來該成員,不同對(duì)象的實(shí)例成員不同,任何一個(gè)對(duì)象改變了實(shí)例成員, 只會(huì)影響這個(gè)對(duì)象本身,其他對(duì)象中的實(shí)例成員不會(huì)發(fā)生改變。對(duì)于實(shí)例成員只能通過對(duì)象來,不能通過類名進(jìn)行,在實(shí)例方法中既可以實(shí)例變量,也 可以類變量。3、(1)接口可以被多重implements,抽象類只能被單一extends (2)接口只有定義,

8、抽象類可以有定義(3)接口的字段定義默認(rèn)為:public sic final, 抽象類字段默認(rèn)是friendly(本包可見) 當(dāng)功能需要累積時(shí)用抽象類,不需要累積時(shí)用接口。4、類給出了屬于該類的全部對(duì)象的抽象定義,而對(duì)象則是符合這種定義的一個(gè)實(shí)體??梢园杨惻c對(duì)象之間的關(guān)系看成是抽象與具體的關(guān)系。在面象的程序設(shè)計(jì)中,對(duì)象被稱作類的一個(gè)實(shí)例(Instance),而類是對(duì)象的模板(Template)。類是多個(gè)實(shí)例的綜合抽象,而實(shí)例又是類的實(shí)物。由于對(duì)象是類的實(shí)例,因此在定義對(duì)象之前應(yīng)先定義類。在定義了類之后,才可以在類的基礎(chǔ)上創(chuàng)建對(duì)象。5、Java 的限定修飾符有 4 種,分別使 public、pr

9、otected、private 和默認(rèn)修飾符。用 public 修飾的類或成員擁 有公共作用域,表明此類或類的成員可以被任何 Java 中的類所訪問,是最廣泛的作用范圍。用 protected 修飾的變量或方法擁有受保護(hù)作用域,可以被 同一個(gè)包中所有的類及其他包中。用 private 修飾的變量或方法擁有私有作該類的子類所用域,只能在此類中,在其他類中,包括該類的子類也的,private 是最保守的作用范圍。沒有任何是不 允許修飾符擁有默認(rèn)權(quán)限(友好權(quán)限),表明此類或類。的成員可以被同一個(gè)包中的其它類6、final修飾符(關(guān)鍵字)如果一個(gè)類被為 final,意味著它不能再派生出新的子類,不能作

10、為父類被繼承。因此一為 abstract 的,又被為 final 的。將變個(gè)類不能既被為 final,可以保證它們?cè)谑褂弥胁槐桓淖?。被量或方法?final 的變量必須在時(shí)給定初值,而在以后的為 final 的方法也同樣只能使中只能,不可修改。被用,不能重載finally再異常處理時(shí)提供finally 塊來執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相匹配的 catch 子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入 finally 塊(如果有的話)。finalize方法名。Java 技術(shù)允許使用 finalize() 方法在收集器將對(duì)象從內(nèi)存中清除出去之前做必要的工作。這時(shí)對(duì)這個(gè)方法是由收集器在確定這個(gè)對(duì)象沒有

11、被個(gè)對(duì)象調(diào)用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者工作。finalize() 方法是在執(zhí)行其他收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。7類。不能 extends(繼承) 其的類是沒有名字的它類,但一個(gè)現(xiàn)。類可以作為一個(gè)接口,由另一個(gè)類實(shí)8方法的存在而不去實(shí)現(xiàn)它的類被叫做抽象類(abstractclass),它用于要?jiǎng)?chuàng)建一現(xiàn)某些基本行為的類,并為該類方法,但不能在該類中實(shí)現(xiàn)該類的情況。不能創(chuàng)建abstract 類的實(shí)例。然而可以創(chuàng)建一個(gè)變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法

12、。Abstract 類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否則它們也是抽象類為。取而代之,在子類中實(shí)現(xiàn)該方法。知道其行為的其它類可以在類中實(shí)現(xiàn)這些方法。接口( erface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實(shí)現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個(gè)有程序體。接口只可以定義 sic final 成員變量。接口的實(shí)現(xiàn)與子類相似,除了該實(shí)現(xiàn)類不能從接口定義中繼承行為。當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現(xiàn)了該接口的類的任何對(duì)象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為變量的類型。通常的動(dòng)態(tài)聯(lián)編將生

13、效??梢赞D(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanceof 運(yùn)算符可以用來決定某對(duì)象的類是否實(shí)現(xiàn)了接口。五、判斷題1-10 F F F F T T F F F F11-20 F F F T F F F FF T21-25 TT六、編程題1、public class Student private String name;private Score score;public void setData(String name,Score score) =name;this.score=score;public void getResult()System.out.pr Syst

14、em.out.prln(Courese:+score.getCourse(); ln(Grade:+score.getGrade();public String getName() return name;public Score getScore() return score;public sic void main(String args) Student student = new Student(); Score score = new Score(); score.setCourse(java); score.setGrade(100);student.setData(mike, s

15、core); student.getResult();public class Score private String course;privategrade;public String getCourse() return course;public void setCourse(String course) this.course = course;publicgetGrade() return grade;public void setGrade( this.grade = grade;grade) 2、public class StudentBeanBean private Stri

16、ng ST_NUMBER; private String ST_NAME;private String ST_RESULT; public StudentBeanBean()public String getST_NUMBER() return this.ST_NUMBER;public String getST_NAME() return this.ST_NAME;public String getST_RESULT() return this.ST_RESULT;public void setST_NUMBER(String ST_NUMBER) this.ST_NUMBER=ST_NUM

17、BER;public void setST_NAME(String ST_NAME) this.ST_NAME=ST_NAME;public void setST_RESULT(String ST_RESULT) this.ST_RESULT=ST_RESULT;public class ParentClass private String name; /privateage; /private String sex; /public ParentClass() super();public ParentClass(String name, super(); = name;

18、this.age = age; this.sex = sex;age, String sex) public String getName() return name;public void setName(String name) = name;publicgetAge() return age;public void setAge( this.age = age;age) public String getSex() return sex;public void setSex(String sex) this.sex = sex;public void f()Syste

19、m.out.prln(我是 ParentClass);public clasbClass extends ParentClass private String grade; /年級(jí)public SubClass() super();public SubClass(String name,age,String sex,String grade) super(name,age,sex); /調(diào)用父類帶參構(gòu)造 this.grade = grade;public String getGrade() return grade;public void setGrade(String grade) this

20、.grade = grade;public void myMethod()System.out.prln(這是 SubClass 中的 myMethod 方法);public void newMethod()System.out.prln(這是 SubClass 中的 newMethod 方法);public class Test public sic void main(String args) ParentClass pClass = nerentClass(sky,21,男);ParentClasbClass = new SubClass(天空,22,男,1 年級(jí)); subClass.

21、f();System.out.prln(:+pClass.getName()+t+年齡:+pClass.getAge(); System.out.prln(姓名:+(SubClas齡:+(SubClas級(jí):+(SubClasbClass).getName()+t+年 bClass).getAge()+t+年 bClass).getGrade();3、package com.sorce.b import java.util.Scanner;Sys;import sun.security.action.GetAction;public class BSys privateuId;/這寫好像用不上,

22、你自己加吧private String uName;private String address;private double mon=0.50;private double money=1000.50;public sic void main(String args) String answer;/ TODO Auto-generated method stub System.out.prln(歡迎進(jìn)入系統(tǒng)!);System.out.prln();doSystem.out.prln(1.取款 t2.查詢余額t3.存款);Scanner sc=new Scanner(System.in);BS

23、ys b=new BSys();num=sc.next();switch (num) case 1:b.get();break;case 2:b.search();break;case 3:b.deit();break;default: break;System.out.prln(是否繼續(xù)?(y/n));answer=sc.next();while(answer.equals(y);System.out.prln(程序結(jié)束);public void deit()Scanner sc=new Scanner(System.in);System.out.prln(請(qǐng)輸入存款金額:);doublei

24、nput=sc.next();System.out.prln(您的帳戶原有余額為:+money+元); System.out.prln(已存入:+input+元);money+=input;System.out.pr元);ln(您的帳戶最終存款余額為:+money+public void search()System.out.prln(您的帳戶余額為、+money+元);public void get()Scanner sc=new Scanner(System.in);System.out.prln(請(qǐng)輸入取款金額:);double input=sc.next if (moneyinput)

25、();System.out.prelse System.out.pr money-=input; System.out.prln(您的帳戶余額!);ln(您本次取出:+input+元);ln(剩余金額為:+money+元);4、(略)5、class Phoneprivate String phonenumber;public void setPhonenumber(String phonenumber)this.phonenumbhonenumber;public String getPhonenumber() return phonenumber;public void recCall()S

26、ystem.out.prpublic voidln(接到一個(gè));Call()System.out.prln(撥出一個(gè)class Fixedphone extends Phone);private String phonenumber;/號(hào)碼是私有,設(shè)置為 private,不可繼承public void recCall()System.out.prln(以+this.phonenumber+呼出了一個(gè)); /重載了父類的 recCallclass Cordlessphone extends Fixedphoneprivate String phonenumber; public void inf

27、o()System.out.prln(這是無繩的信息);erface Moveablepublic void moveinfo();class Mobilephone extends Phone implements Moveable private String phonenumber;public void moveinfo()System.out.prln(我實(shí)現(xiàn)了可移動(dòng)性);public class PhoneTestpublic sic void main(String a)Phone p=new Phone5; Phone p1=new Phone();p1.setPhonenum

28、ber(123456789); p0=p1;Phone p2=new Phone(); p2.setPhonenumber(987654321); p1=p2;Mobilephone mp=new Mobilephone(); mp.setPhonenumber(11111); p2=mp;Fixedphone fp=new Fixedphone(); fp.setPhonenumber(22222); p3=fp;Cordlessphone cp=new Cordlessphone(); cp.setPhonenumber(33333);p4=cp;for(i=0;i 0) sb.appen

29、d( + ). append(this.imaginaryPart). append(i); else if (this.imaginaryPart 0) sb.append( - ).append(Ma append(i);bs(this.imaginaryPart).return sb.toString();14、public class Test public sic void main(String args) Patient april=netient();april.setName(ZhangLi); april.setSex(f); april.setAge(33); april

30、.setWeight(154.72f); april.setAllergies(true);System.out.pr System.out.pr System.out.prln(Name: +april.getName();ln(Sex: +april.getSex();ln(Age: +april.getAge();System.out.pr System.out.prln(Weight: +april.getWeight(); ln(Allergies: +april.getAllergies();Complex c1 = new Complex(1, 2); Complex c2 =

31、new Complex(3, 4);System.out.pr System.out.pr System.out.pr System.out.prln(c1.add(c2); ln(c1.subtract(c2); ln(c1.multiply(c2); ln(c1.divide(c2);class Patient private String name; private char sex;privateage;private float weight;privateallergies;public String getName() return name;public void setNam

32、e(String name) = name;public char getSex() return sex;public void setSex(char sex) this.sex = sex = M ? sex : F;publicgetAge() return age;public void setAge(age) this.age = Math.max(1, age);public float getWeight() return weight;public void setWeight(float weight) this.weight = Math.max(0.

33、0f, weight);publicgetAllergies() return allergies;public void setAllergies( this.allergies = allergies;allergies) 15、Student 類: public class Student String name =;public String getName() return name;public void setName(String name) = name;Sics 類:public class S String str;ics public Sics()

34、this.str = new Student().getName();16、class TestString String s ;public TestString(length)s=new String lenth;private void setter()private void getter()private void dispS() if(s=null)System.out.prelseln(s is null ! );for(i=0 ;is.length;+i)System.out.prln(this.si);17、import java.io.*; public class Pox,y;public Po(x,y)this.x = x; this.y = y;public PogetPo()PotempPo= new Po;(x,y);return tempPopublic void setPo(Popo)this.x = po this.y = po.x;.y;public sPoic void main(String args)Po1 = new Po(3,4);System.out.prln(Po1:+(+Po1.x+,+Po1.y+);PoPo2 = Po1.getPo();System.out.prl

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論