自考Java語言程序設(shè)計課后習(xí)題及答案_第1頁
自考Java語言程序設(shè)計課后習(xí)題及答案_第2頁
自考Java語言程序設(shè)計課后習(xí)題及答案_第3頁
自考Java語言程序設(shè)計課后習(xí)題及答案_第4頁
自考Java語言程序設(shè)計課后習(xí)題及答案_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、自考Java語言程序設(shè)計(一)課后習(xí)題及答案自考Java語言程序設(shè)計(一)第一章Java語言概述課后習(xí)題 一、Java語言概述1Java語言有哪些特點(diǎn)?2什么叫做類?什么叫做對象?3簡述Java的運(yùn)行機(jī)制。4簡述Java應(yīng)用程序的開發(fā)流程。5當(dāng)初Sun公司發(fā)展Java的原因是:來源:aaaexamdaaaa(a)要發(fā)展航空仿真軟件(b)要發(fā)展人工智能軟件(c)要發(fā)展消費(fèi)性電子產(chǎn)品6.Java是從哪種語言改進(jìn)并重新設(shè)計?(a)Ade來源:aaaexamdaaaa(b)C+(c)Pascal7.Java因為什么快速發(fā)展而走紅?(a)個人計算機(jī)與網(wǎng)絡(luò)(b)游戲軟件(c)系統(tǒng)軟件8.Java程序的種類

2、有:(a)內(nèi)嵌于Web文件中,由瀏覽器來觀看的_(b)可獨(dú)立運(yùn)行的_考試大論壇(c)服務(wù)器端的_9.Java是面向?qū)ο笳Z言,對象是客觀事物的,對象與之是一一對應(yīng)的,它是很具體的概念。10. 判斷:用Javac編譯Java源文件后得到代碼叫字節(jié)碼。()參考答案1答:面向?qū)ο蟆⒑唵?、平臺無關(guān)性、安全性、內(nèi)存管理、分布式應(yīng)用、多線程、動態(tài)、解釋運(yùn)行,高效能2答:在面向?qū)ο缶幊讨校唧w的客觀實體稱為對象,對象就是數(shù)據(jù)加方法。對象在程序中是通過一種抽象數(shù)據(jù)類型來描述的,這種抽象數(shù)據(jù)類型稱為類。類是對具有相同屬性和方法的一組相似對象的抽象,或者說類是對象的模板。來源:考試大3答:Java程序的運(yùn)行必須經(jīng)過

3、編寫、編譯、運(yùn)行三個步驟。編寫是指在Java開發(fā)環(huán)境中進(jìn)行程序代碼的輸入過程,最終形成后綴名為.java源文件。編譯是指使用Java編譯器對源文件進(jìn)行錯誤排查的過程,編譯后將生成后綴名為.class的字節(jié)碼文件。運(yùn)行是指使用Java解釋器 將字節(jié)碼文件翻譯成機(jī)器代碼,在cpu上運(yùn)行并顯示結(jié)果的過程。這一過程如圖所示。考試大全國最大教育類網(wǎng)站(aaaE)4Java應(yīng)用程序的運(yùn)行經(jīng)過編寫、編譯、運(yùn)行三個步驟。第1步,編寫程序。使用記事本或其他軟件編寫程序的源代碼,將源代碼保存為文件filename.java文件。第2步,編譯程序。在MS-DOS命令窗口,將當(dāng)前目錄轉(zhuǎn)換到Java源

4、程序所在的保存目錄;輸入“javame.java”形式的命令進(jìn)行程序編譯。第3步,執(zhí)行程序。在同樣的命令窗口中輸入“javame”形式的命令執(zhí)行程序。來源:考試大完成了程序的開發(fā),查看相應(yīng)t目錄,其中應(yīng)該具有兩個文件,分別是XXXX.java和XXXX.class。考試大收集整理5.c6.b7.a8.AppletApplicationServlets9.軟件模型10.true自考Java語言程序設(shè)計(一)第二章數(shù)據(jù)類型和流程控制課后習(xí)題二、數(shù)據(jù)類型和流程控制1. 現(xiàn)有語句:String s = "Example"則下面哪些語句是合法語句?A. s >>>

5、= 3;B. s3 = "x"C. int i = s.length();D. String t = "For " + s;E. s = s + 10;2下面哪些是保留字?A. run B. default C. implement D. import3下面聲明float變量的語句合法的有:A. float foo = -1; B. float foo = 1.0; C. float foo = 42e1; D. float foo = 2.02f; E. float foo = 3.03d; F. float foo = 0x0123;4. 下面方法中

6、的“返回類型無效”應(yīng)該是什么?public class ReturnIt 來源:考試大return無效 methodA(byte x, double y) return (short)x / y * 2; 5以下哪兩個表達(dá)式是等價的:A. 3/2 B. 3<2 C. 3*4 D. 3<<2 E. 3*22F. 3<<<26.指出正確的表達(dá)式A、 byte=128; 來源:考試大B、 Boolean=null; C、 long l=0xfffL; D、 double=0.9239d; 7分析下列程序的執(zhí)行結(jié)果:(1)public class Test publ

7、ic static void main(String args) int i = oxFFFFFFF1; int j = i; System.out.println("j=" + j); (2)public class Test public static void main(String args) System.out.println(6 3); (3)public class FooBar public static void main(String args) int i = 0, j = 5; tp: for(; ; i+) for( ; ; -j) if(i &

8、gt; j)break tp; System.out.println("i=" + i + ",j=" + j); (4)public class Testpublic static void main()int i = 1, j = 10; do if(i+ > -j)continue; while(i < 5); System.out.println("i=" + i + " j=" + j); (5)class Value public int i = 15; public class Test

9、public static void main(String argv) Test t = new Test(); t.first(); public void first() int i = 5; Value v = new Value(); v.i = 25; second(v, i); System.out.println(v.i); public void second(Value v, int i) i = 0; v.i = 20; Value val = new Value(); 來源:考試大的美女編輯們v = val; System.out.println(v.i + "

10、; " + i); 8.選出合理的標(biāo)識符A、 _sys1_lll B、 2mail C、 $change D、 class 9. 判斷:一個方法最多能有一個return語句()10. Java語言中一個Char類型的數(shù)據(jù)占用2個字節(jié)大小的內(nèi)存空間()參考答案1cde2b,d3a,d,f4double5c,d6. d7(1)c(2)5(3)i = 0, j = -1(4)i=5 j=6(5)15 0 208. a c9. true10.ture自考Java語言程序設(shè)計(一)第三章類與對象課后習(xí)題三、類與對象1什么叫引用類型,對象是引用類型嗎?2什么是類成員,什么是實例成員?他們之間有什

11、么區(qū)別?3. 判斷:數(shù)組、類和接口都是引用數(shù)據(jù)類型()4.判斷:類A和類B位于同一個包中,則除了私有成員,類A可以訪問類B的所有其他成員()5.下面哪個修飾符修飾的變量是所有同一個類生成的對象共享的()A、publicB、privateC、staticD、final采集者退散6.下面關(guān)于java中類的說法哪個是不正確的()A、類體中只能有變量定義和成員方法的定義,不能有其他語句。B、構(gòu)造函數(shù)是類中的特殊方法。C、類一定要聲明為public的,才可以執(zhí)行。采集者退散D、一個java文件中可以有多個class定義。7.下列哪個類聲明是正確的() A abstract final class H1B

12、 abstract private move()C protected private number;D public abstract class Car8.下述哪些說法是正確的? (多選)A、 實例變量是類的成員變量B、 實例變量是用static關(guān)鍵字聲明的C、 方法變量在方法執(zhí)行時創(chuàng)建D、方法變量在使用之前必須初始化9設(shè)計一個動物類,它包含動物的基本屬性。例如名稱、大小、重量等,并設(shè)計相應(yīng)的動作,例如跑、跳、走等。10設(shè)計一個長方形類,成員變量包括長和寬。類中有計算面積和周長的方法,并有相應(yīng)的set方法和get方法設(shè)置和獲得長和寬。編寫測試類測試是否達(dá)到預(yù)定功能。要求使用自定義的包。參考

13、答案1答:引用類型是指該類型的標(biāo)識符表示的是一片內(nèi)存連續(xù)位置的首位置。對象是引用類型。來源:考試大2答:Java中使用static修飾的變量和方法稱為類變量(或稱靜態(tài)變量)和類方法(或稱靜態(tài)方法),沒用static修飾符的變量和方法稱為實例變量和實例方法。類成員是指該成員屬于這個類,由這個類所創(chuàng)建的所有對象共同擁有,該成員僅在類的存儲單元中存在,這個類所創(chuàng)建的所有對象中僅存儲一個指向該成員的 引用。任何一個該類的對象改變了類成員,其他對象同樣會發(fā)生改變。對于類成員既可以使用對象訪問,也可以使用類名直接進(jìn)行訪問,并且在類方法中只能訪問類 變量,而不能訪問實例變量。實例成員是指該成員由每一個對象個

14、體獨(dú)有,對象的存儲空間中的確有一塊空間用來存儲該成員,不同對象的實例成員不同,任何一個對象改變了實例成員, 只會影響這個對象本身,其他對象中的實例成員不會發(fā)生改變。對于實例成員只能通過對象來訪問,不能通過類名進(jìn)行訪問,在實例方法中既可以訪問實例變量,也 可以訪問類變量??荚嚧笫占?. true4. true5. C6C7. D8. A C D9.答:public class Animalprivate String name;private double weight;private int length;privateString sex; public void run()System

15、.out.println("the animal is running!");public void jump()System.out.println("the animal is jumping!");public void walk()System.out.println("the animal is walking!");10答:package mypackage.math;class Rectangleprivate int length;private int width;public Rectangle(int lengt

16、h,int width)this.length=length;this.width=width;public void set(int length,int width)this.length=length;this.width=width;public void get()System.out.println("此長方形的長為"+length+"寬為"+width);public int getLength()return length;public int getWidth()return width;public int calculatePeri

17、meter()return 2*(length+width);public int calculateArea()return (length*width);public void print()System.out.println("此長方形的周長為"+calculatePerimeter()+"面積為"+calculateArea();class Testpublic static void main(String args)Rectangle myrectangle=new Rectangle(15,10);myrectangle.get();my

18、rectangle.print();myrectangle.set(20,15);System.out.println("長方形的長是"+myrectangle.getLength()+"寬是"+ myrectangle .getWidth();myrectangle.print();自考Java語言程序設(shè)計(一)第四章方法與構(gòu)造函數(shù)課后習(xí)題四、方法與構(gòu)造函數(shù)1Java的訪問限定修飾符有幾種,各自的訪問權(quán)限是什么?2如何創(chuàng)建自己的包,如何引入包?3下面哪一個是類Myclass的構(gòu)造函數(shù)?class Myclassaaaxamdaaaapublic voi

19、d Myclass()public static Myclass()public Myclass()public static void Myclass()4. 判斷:類體中private修飾的變量在本類中能訪問,類生成的對象也能訪問。()5. 判斷:一個類中,只能擁有一個構(gòu)造器方法。()6.Java中類成員的限定詞有以下幾種:private, public, _, _。其中,_的限定的范圍最大。7、被關(guān)鍵字_修飾的方法是不能被當(dāng)前類的子類重新定義的方法8設(shè)計Point類用來定義平面上的一個點(diǎn),用構(gòu)造函數(shù)傳遞坐標(biāo)位置。編寫測試類,在該類中實現(xiàn)Point類的對象。9編寫程序說明靜態(tài)成員和實例成員

20、的區(qū)別。10設(shè)計雇員Employee類,記錄雇員的情況,包括姓名、年薪、受雇時間,要求定義MyDate類作為受雇時間,其中包括工作的年、月、日,并用相應(yīng)的方法對Employee類進(jìn)行設(shè)置。編寫測試類測試Employee類。要求使用自己的包。參考答案1答:Java的訪問限定修飾符有4種,分別使public、protected、private和默認(rèn)修飾符。用public修飾的類或成員擁 有公共作用域,表明此類或類的成員可以被任何Java中的類所訪問,是最廣泛的作用范圍。用protected修飾的變量或方法擁有受保護(hù)作用域,可以被 同一個包中所有的類及其他包中該類的子類所訪問。用private修飾的

21、變量或方法擁有私有作用域,只能在此類中訪問,在其他類中,包括該類的子類也是不 允許訪問的,private是最保守的作用范圍。沒有任何修飾符擁有默認(rèn)訪問權(quán)限(友好訪問權(quán)限),表明此類或類的成員可以被同一個包中的其它類訪問本文來源:考試大網(wǎng)2答:創(chuàng)建自己的包只要將package語句作為Java源文件的第一句就可以了。例package myPackage; 聲明創(chuàng)建了一個名為myPackage的包。Java使用import語句來引入包及其中的類。例如import myPackage.*;就引入了myPackage包中所有的類。3答:public Myclass()是類Myclass的構(gòu)造函數(shù)。4.

22、false5. false6. friendly、 protected、public7Private8. 答:class Point int x,y;Point(int a,int b) x=a;y=b;public class A public static void main(String args) Point p1,p2;p1=new Point(10,10);p2=new Point(23,35);9答:class StaticTestint i=5;static int j=5;void print()System.out.println("i="+i);Sys

23、tem.out.println("j="+j);static void classprint()/System.out.println("i="+i);System.out.println("j="+j);class Testpublic static void main(String args)/System.out.println(StaticTest.i);System.out.println(StaticTest.j);/StaticTest.print();StaticTest.classprint();StaticTest

24、 st=new StaticTest();System.out.println(st.j);System.out.println(st.j);st.print();st.classprint();10答:package mypackage.employee;class MyDateprivate int year;private int month;private int day;public MyDate(int year,int month,int day)this.year=year;this.month=month;this.day=day;public int getYear()re

25、turn year; public class Employeeprivate String name;private double salary;private MyDate hireDay;public Employee(String name,double salary,MyDate day)=name;this.salary=salary;hireDay=day;public void print()System.out.println(name+ ""+salary+""+hireYear();public int hireY

26、ear()return hireDay.getYear();class TestEmployeepublic static void main(String args)Employee a=new Employee("李明",20000,new MyDate(2000,10,1);Employee b=new Employee("王強(qiáng)",24000,new MyDate(1995,8,12);a.print();b.print();自考Java語言程序設(shè)計(一)第五章類的繼承課后習(xí)題五、類的繼承l(wèi)什么是繼承?什么是父類?什么是子類?繼承的特性可給面向?qū)ο?/p>

27、編程帶來什么好處?什么是單重繼承?什么是多重繼承?2觀察下面的程序片斷,指出其中的父類和子類,以及父類和子類的各個域和方法。class SuperClassint data;voidsetData(intnewData)data=newDataintgetData()return dataclass SubClass extends SuperClassint suhData;void setSubData(intnewData)suhData=new Data;intgetData()return subData;3“子類的域和方法的數(shù)目一定大于等于父類的域和方法的數(shù)目”,這種說法是否正確?

28、為什么?4. 在Java程序中,通過類的定義只能實現(xiàn)單重繼承()5.下列哪些說法是正確的?A、 Java 語言只允許單一繼承B、 Java 語言只允許實現(xiàn)一個接口C、 Java 語言不允許同時繼承一個類并實現(xiàn)一個接口D、 Java 語言的單一繼承使得代碼更加可靠6.Java中所有類都是類_的子類。7.請寫出下面程序的運(yùn)行結(jié)果。public class Test extends TT public void main(String args) Test t = new Test("Tom"); public Test(String s) super(s); System.ou

29、t.println("How do you do?"); public Test() this("I am Tom"); aaaxamdaaaaclass TT public TT() System.out.println("What a pleasure!"); public TT(String s) this(); System.out.println("I am "+s); 結(jié)果:_8.父類的成員在子類中的訪問權(quán)限由決定。9.對象的使用包括引用對象的成員變量和方法。通過運(yùn)算符就能實現(xiàn)對對象成員變量的訪問和對象

30、10.Java是面向?qū)ο笳Z言,對象是客觀事物的,對象與之是一一對應(yīng)的,它是很具體的概念。參考答案: l答:繼承是面向?qū)ο蟪绦蛟O(shè)計中兩個類之間的一種關(guān)系。當(dāng)一個類獲取另一個類中所有非私有的數(shù)據(jù)和操作的定義作為它自己的部分或全部成分時,就稱這兩個類之間具有繼承關(guān)系。被繼承的類稱為父類或超類,繼承了父類或超類的所有數(shù)據(jù)和操作的類稱為子類。面向?qū)ο蟪绦蛟O(shè)計中的繼承,可使得程序結(jié)構(gòu)更加清晰,降低了編碼和維護(hù)的工作量。如果一個類只能有一個父類,則這種繼承關(guān)系稱為單重繼承;如果一個類可以有多個父類,則這種繼承關(guān)系稱為多重繼承。2答:父類SuperClass父類的域data來源:考試大的美女編輯們父類的方法s

31、etData(),getData()子類SubClass子類的域data,subData子類的方法setSubData(),setData(),getData()采集者退散3答:這種說法是錯誤的,因為子類不一定能繼承父類的所有域和方法,它只能繼承所有非私有的域和方法。如果子類在繼承之外自己定義的域和方法數(shù)目小于父類中私有成員的數(shù)目,則子類的域和方法的數(shù)目小于父類的域和方法的數(shù)目|考試大收集整理4. true5. A D6. Object7. 答:What a pleasure!I am TomHow do you do?8. 訪問權(quán)限修飾符9. “.”10.軟件模型自考Java語言程序設(shè)計(一

32、)第六章重載與多態(tài)課后習(xí)題六、重載與多態(tài)1.判斷:接口中的所有方法都沒有被實現(xiàn)。()2.方法重載是指 ( ) A.兩個或兩個以上的方法取相同的方法名,但形參的個數(shù)或類型不同考試大論壇B.兩個以上的方法取相同的名字和具有相同的參數(shù)個數(shù),但形參的類型可以不同C.兩個以上的方法名字不同,但形參的個數(shù)或類型相同D.兩個以上的方法取相同的方法名,并且方法的返回類型相同 3什么是方法的覆蓋?方法的覆蓋與域的隱藏有何不同?與方法的重載有何不同?4解釋this和super的意義和作用。5什么是多態(tài)?面向?qū)ο蟪绦蛟O(shè)計為什么要引人多態(tài)的特性?使用多態(tài)有什么優(yōu)點(diǎn)? 6Java程序如何實現(xiàn)多態(tài)?有哪些方式?7根據(jù)下面

33、的要求編程實現(xiàn)復(fù)數(shù)類ComplexNumber。(1)復(fù)數(shù)類ComplexNumber的屬性·m_dRealPart實部,代表復(fù)數(shù)的實數(shù)部分。·m_dlmaginPart虛部,代表復(fù)數(shù)的虛數(shù)部分。(2)復(fù)數(shù)類ComplexNumber的方法·ComplexNumber()構(gòu)造方法,將實部、虛部都置為0。·ComplexNumber(doubler,doublei)構(gòu)造方法,創(chuàng)建復(fù)數(shù)對象的同時完成復(fù)數(shù)的實部、虛部的初始化;r為實部的初值,i為虛部的初值。·getRealPart()獲得復(fù)數(shù)對象的實部。·getlmaginaryPart(

34、)獲得復(fù)數(shù)對象的虛部。·setRealPart(doubled)把當(dāng)前復(fù)數(shù)對象的實部設(shè)置為給定的形參的數(shù)字。·setlmaginaryPart(doubled)把當(dāng)前復(fù)數(shù)對象的虛部設(shè)置為給定形參的數(shù)字。·complexAdd(ComplexNumberc)當(dāng)前復(fù)數(shù)對象與形參復(fù)數(shù)對象相加,所得的結(jié)果也是復(fù)數(shù)值,返回給此方法的調(diào)用者。·complexAdd(doublec)當(dāng)前復(fù)數(shù)對象與形參實數(shù)對象相加,所得的結(jié)果仍是復(fù)數(shù)值,返回給此方法的調(diào)用者。·complexMinus(ComplexNumberc)當(dāng)前復(fù)數(shù)對象與形參復(fù)數(shù)對象相減,所得的結(jié)果也

35、是復(fù)數(shù)值,返回給此方法的調(diào)用者。8什么是接口?為什么要定義接口?接口與類有何異同?來源:考試大的美女編輯們9一個類如何實現(xiàn)接口?實現(xiàn)某接口的類是否一定要重載該接口中的所有抽象方法?10接口是否可以被繼承?閱讀下面的代碼,試寫出SubInterface中的抽象方法。interface SupInterfacepublic abstract int supMethod();interface SubInterface extends SupInterfacepublic abstract string subMethod();參考答案:1. true2.A3答:子類重新定義父類中已經(jīng)存在的方法,稱

36、為方法的覆蓋。注意:方法覆蓋與域的隱藏不同。子類重新定義父類已有的域,并不能完全取代它從父類那 里繼承的同名的域,這個域仍然占用子類的內(nèi)存空間,在某些情況下會被使用;而當(dāng)子類重新定義父類的方法時,從父類那里繼承來的方法將被新方法完全取代,不 再在子類的內(nèi)存空間中占一席之地。與方法的覆蓋不同,重載不是子類對父類同名方法的重新定義,而是在一個類中定義了同名的不同方法。4答:關(guān)鍵字this指代當(dāng)前類的當(dāng)前對象,關(guān)鍵字super指代當(dāng)前類的直接父類對象??荚嚧笕珖畲蠼逃惥W(wǎng)站(aaaE)5答:一個類中存在多個同名的方法,稱為多態(tài)。把抽象功能和目的相同,而具體實現(xiàn)因不同情況而異的方法

37、命名為同名方法,符合面向?qū)ο蟪绦蛟O(shè)計中抽象、提升概念,封裝、隱藏細(xì)節(jié)的特點(diǎn),從而提高了程序的簡潔性和可讀性,降低了類和程序模塊直接的相互耦合和依賴。6答:Java程序通過覆蓋和重載兩種方式來實現(xiàn)多態(tài)。覆蓋是子類重新定義父類中已有的方法,重載是在一個類內(nèi)部定義與已存在的方法同名但是參數(shù)列表不同的方法。7答:public class ch5_e5_12public static void main(String args)ComplexNumber cNumber_1 = new ComplexNumber(3,-5);ComplexNumber cNumber_2 = 本文來源:考試大網(wǎng)new

38、ComplexNumber(2,2);double d = 10.0;System.out.println(cNumber_1.toString() + " 加 "+ cNumber_2.toString() + " 等于 " + cNumber_1aaaplexAdd(cNumber_2).toString();System.out.println(cNumber_1.toString() + " 加 "+ d + " 等于 " + cNumber_1aaaplexAdd(d).toString();System

39、.out.println(cNumber_1.toString() + " 減 "+ cNumber_2.toString() + " 等于 "+ cNumber_1aaaplexMinus(cNumber_2).toString();System.out.println(cNumber_1.toString() + " 減 "+ d + " 等于 "+ cNumber_1aaaplexMinus(d).toString();System.out.println(cNumber_1.toString() + &qu

40、ot; 乘 "+ cNumber_2.toString() + " 等于 "+ cNumber_1aaaplexMulti(cNumber_2).toString();System.out.println(cNumber_1.toString() + " 乘 "+ d + " 等于 "+ cNumber_1aaaplexMulti(d).toString();class ComplexNumber/域private double m_dRealPart;private double m_dImaginPart;/構(gòu)造方法Co

41、mplexNumber()m_dRealPart = 0.0;m_dImaginPart = 0.0;ComplexNumber(double r,double i)m_dRealPart = r;m_dImaginPart = i;ComplexNumber(ComplexNumber c)m_dRealPart = c.getRealPart();m_dImaginPart = c.getImaginaryPart();/get,set方法double getRealPart()return m_dRealPart;double getImaginaryPart()return m_dIm

42、aginPart;void setRealPart(double d)m_dRealPart = d;void setImaginaryPart(double d)m_dImaginPart = d;/復(fù)數(shù)運(yùn)算方法ComplexNumber complexAdd(ComplexNumber c)return new ComplexNumber(this.m_dRealPart + c.getRealPart(),this.m_dImaginPart + c.getImaginaryPart();ComplexNumber complexAdd(double c)return new Compl

43、exNumber(this.m_dRealPart + c, this.m_dImaginPart);ComplexNumber complexMinus(ComplexNumber c)return new ComplexNumber(this.m_dRealPart - c.getRealPart(),this.m_dImaginPart - c.getImaginaryPart();ComplexNumber complexMinus(double c)來源:aaaexamdaaaareturn new ComplexNumber(this.m_dRealPart - c, this.m

44、_dImaginPart);ComplexNumber complexMulti(ComplexNumber c)return new ComplexNumber(this.m_dRealPart * c.getRealPart() - this.m_dImaginPart * c.getImaginaryPart(),this.m_dRealPart * c.getImaginaryPart()+ this.m_dImaginPart * c.getRealPart();ComplexNumber complexMulti(double c)return new ComplexNumber(

45、this.m_dRealPart * c, this.m_dImaginPart * c);/toString()public String toString()return "(" + m_dRealPart + " + " + m_dImaginPart + " i" + ")"8答:接口是用來實現(xiàn)類間多重繼承功能的結(jié)構(gòu)。接口與類相似,但是接口中只能包括常量和抽象方法。定義接口相當(dāng)于定義了一組抽象的功能、屬性集合,可以使了ava程序的類層次結(jié)構(gòu)更加合理,并實現(xiàn)多重繼承。9答:使用關(guān)鍵字implements可以定

46、義類實現(xiàn)某接口。實現(xiàn)某接口的類如果不是抽象類,則需要通過重載來實現(xiàn)該接口中的所有抽象方法;如果這個類是抽象類,則它可以不必實現(xiàn)該接口中的所有抽象方法。10答:接口可以被繼承。SubInterface中的抽象方法有:public abstract int supMethod();和public abstract string subMethod();兩個。自考Java語言程序設(shè)計(一)第七章Java常用類庫介紹課后習(xí)題七、Java 常用類庫介紹1指出下列陳述是對還是錯,并做出解釋。(1)當(dāng)String對象用= = 比較時,如果String包括相同的值則結(jié)果為true。(2)一個String類的對

47、象在其創(chuàng)建后可被修改。2對于下列描述,各寫出一條語句完成要求的任務(wù)(1)比較s1中的串和s2中的串的內(nèi)容的相等性;(2)用+=向串s1附加串;(3)判斷s1中串的長度;來源:考試大3說明capacity()與length()用法上的差異?4如果ch為StringBuffer對象,ch=“Java Apple”,下列結(jié)果為何?(1)ch.insert(3,p)(2)ch.append(“Basic”)(3)ch.setlength(5)(4)ch.reverse()5Math類中提供用來常數(shù)和e的靜態(tài)屬性分別是什么?6下面關(guān)于Vector類的說法正確的是()(1)類Vector在java.uti

48、l包中。(2)一個向量(Vector)對象存放的是一組有序的對象。(3)一個向量(Vector)對象大小可以根據(jù)存放的元素個數(shù)的增加而自動增加。(4)一個向量(Vector)對象中每個元素可以是不同類型的對象。7有三個字符串,編寫程序找出其中最大者。8編寫一個程序,設(shè)定一個有大小寫字母的字符串,先將字符串的大寫字符輸出,再將字符串中的小寫字符輸出。9設(shè)定5個字符串,要求只打印那些以字母“b”開頭的串,編寫程序完成。10設(shè)定一個有大小寫字母的字符串和一個查找字符,使用類 String方法IndexOf()來判斷在該字符串中該字符出現(xiàn)的次數(shù)。參考答案1答:(1)錯。用= =操作符比較String對

49、象實際上是判斷它們在內(nèi)存中是否為同一對象,并不是判斷它們的值是否相同。(2)錯。String類的對象是常量。它們被創(chuàng)建后不可被修改。2答:(1)s1.equals(s1,s2);(2)s1+=s2;(3)s1.length();3答:capacity()返回字符串對象的當(dāng)前緩沖區(qū)的長度,length()返回字符串對象字符的長度??荚嚧笫占?答:(1)結(jié)果:Javpa Applet(2)結(jié)果:Javpa AppletBasic(3)結(jié)果:ch長度變?yōu)?(4)結(jié)果:apvaJ5答:PI、 E6答:(3)7public class max1public static void main(Stri

50、ng args)String s1= "Hello Java"String s2= "Java Applet"String s3= "Java"String s;if(s1aaapareTo(s2)<0)s=s2;else s=s1;if(saaapareTo(s3)<0)s=s3;Systrm.out.println("big="+s);8public class outpublic static void main(String args)String s1= "Hello Java&qu

51、ot;StringBuffer bufup=new StringBuffer();StringBuffer buflow=new StringBuffer();for(int I=0;Iif(s1.charAt(i)<97)bufup.append(s1.charAt(i);bufup.append(' ' );else buflow.append(s1.charAt(i);buflow.append('' );System.out.println("s1= "+s1);System.out.println(" uppercase= "+bufup);System.out.println(" lowercase= "+buflow);9public class prin_b public static void main(String args)String s1="hello"String s2="bee"String s3="java"String s4="brove"String s5="bag"if(s1.indexOf('b

溫馨提示

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

評論

0/150

提交評論