JAVA基礎(chǔ)第3章類與對象-練習題_第1頁
JAVA基礎(chǔ)第3章類與對象-練習題_第2頁
JAVA基礎(chǔ)第3章類與對象-練習題_第3頁
JAVA基礎(chǔ)第3章類與對象-練習題_第4頁
JAVA基礎(chǔ)第3章類與對象-練習題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第3章 類與對象一選擇題1.下列不屬于面向?qū)ο缶幊痰奶匦允牵―)。A封裝性 B. 繼承性 C. 多態(tài)性 D. 編譯執(zhí)行2.下列類的聲明中不合法的是(C)。A. class People B. class 植物 C. Class A D. public class 共有類3.下列方法的聲明中不合法的是(C)。A. float area() B. void area() C. double area(d) D. int area(int r)4. 下列構(gòu)造方法(構(gòu)造器)的調(diào)用中正確的是(C)。A. 按照一般的方法調(diào)用 B. 由用戶直接調(diào)用 C. 只能通過new自動調(diào)用 D. 被系統(tǒng)調(diào)用5.下列程序

2、運行的結(jié)果是(A)。 class Bookint width;int length;public class Astatic void f(Book p)p.width=20;p.length=40;public static void main(String args)Book b=new Book();b.width=10;b.length=20;f(b);System.out.print( +b.width);System.out.print( +b.length);A. 20 40 B. 10 40 C. 10 20 D. 以上都不對6.下列程序運行的結(jié)果是(D)。public cla

3、ss A static void f(int y)y=y+10;public static void main(String args) double x=10; f(x); System.out.println(x);A. 10 B. 20 C. 10.0 D. 程序編譯錯誤7.下列程序運行的結(jié)果是(C)。public class Aint z=20;static void f(int y)y=z;System.out.println(y);public static void main(String args) f(10);A. 10 B. 20 C. 程序編譯錯誤 D. 以上都不對8.

4、以下代碼的輸出結(jié)果為(C)。public class Pass static int j=20; public static void main(String args) int i=10; Pass p = new Pass(); p.amethod(i); System.out.println(i+ and +j); public void amethod(int x) x=x*2; j=j*2; A錯誤: 方法參數(shù)與變量不匹配B. 20 and 40C. 10 and 40D. 10 and 209. 編譯和運行程序會出現(xiàn)什么樣的結(jié)果(A)。public class Ref public

5、 static void main(String args) Ref r = new Ref(); r.amethod(r); public void amethod(Ref r) int i=99; multi(r); System.out.println(i); public void multi(Ref r) r.i = r.i * 2; A編譯出錯 B. 輸出:99 C. 輸出:198 D. 運行出錯10. 關(guān)于以下程序代碼的說明正確的是(D)。1.class HasStatic2. static int x=100; int y=0;3. public static void mai

6、n(String args)4. HasStatic hs1=new HasStatic();5. hs1.x+;6. HasStatic hs2=new HasStatic();7. hs2.x+;8. hs1=new HasStatic();9. hs1.x+;10. HasStatic.x- -;11. System.out.println(x=+x);12. 13.A5行不能通過編譯,因為引用了私有靜態(tài)變量B10行不能通過編譯,因為x是私有靜態(tài)變量C程序通過編譯,輸出結(jié)果為:x=103 D程序通過編譯,輸出結(jié)果為:x=10211. 有如下代碼:public class Test voi

7、d printValue(int m) do System.out.println(The value is+m); while( -m 10 ); public static void main(String arg) int i=10; Test t= new Test(); t.printValue(i); 其輸出結(jié)果是什么(C)。A. The value is 8 B. The value is 9C. The value is 10 D. The value is 1112. 以下代碼的調(diào)試結(jié)果為(D)。 1. public class Q21 2. 3. int maxElemen

8、ts; 4. 5. void Q21() 6. 7. maxElements = 100; 8. System.out.println(maxElements); 9. 10. 11. Q21(int i) 12. 13. maxElements = i; 14. System.out.println(maxElements); 15. 16. 17. public static void main(String args) 18. 19. Q21 a = new Q21(); 20. Q21 b = new Q21(999); 21. 22. A. 輸出 100 和 999B輸出 999 和

9、 100C第3行出現(xiàn)編譯錯誤, 變量 maxElements 未初始化D. 第19行出現(xiàn)編譯錯誤13. 給出如下類定義:public class test test(int k) 如果要創(chuàng)建一個該類的對象,正確的語句是(B)。A test obj1=new test(); B test obj1=new test(5);C test obj1=new test(5 ); D test obj1=new test(3.4);14. 指出下列哪個方法不能與方法public void add(int a)重載(A)。A. public int add(int b)B. public void add

10、(double b)C. public void add(int a, int b)D. public void add(float g)15.下面程序的輸出結(jié)果是什么(C)。class J_Testint m_i = 2;String m_s = null;J_Test()m_i = 3;m_s = constructor;public static void main(String args)J_Test app = new J_Test();System.out.println(app.m_i+app.m_s);A. 2null B. 3null C. 3constructor D. 以

11、上都不對16. 下面程序的輸出結(jié)果是什么(A)。class J_Testint m_i = 2;String m_s = null;void J_Test()m_i = 3;m_s = constructor;public static void main(String args)J_Test app = new J_Test();System.out.println(app.m_i+app.m_s);A. 2null B. 3null C. 3constructor D. 以上都不對17.下列代碼的運行結(jié)果是(D)。public class J_Teststatic short m_inde

12、x;static int m_age;public static void mb_setData(long n)m_index = n;public static void main(String args)mb_setData(98);System.out.println(Index= + m_index + ;Age=+m_age);A. Index = 98;Age=0 B. Index = 0;Age=0C. Index = 0;Age=98 D. 以上都不對18.下列程序的運行結(jié)果為(B)。 public class J_Teststatic char m_name;static i

13、nt m_age;public static void mb_setData(char n)m_name = n;public static void mb_setData(int n)m_age = n;public static void main(String args)mb_setData(int)a);mb_setData(char)98);System.out.println(Name= + m_name + ;Age=+m_age);AName=98;Age=97 B. Name=b;Age=97 C. Name=97;Age=B D. 以上都不對19. 程序的運行結(jié)果為(A)。

14、 public class J_Teststatic short m_index;static int m_age;public static void mb_setData(short n)m_index = n;public static void mb_setData(int n)m_age = n;public static void main(String args)mb_setData(98);System.out.println(Index= + m_index + ;Age=+m_age);A. Index=0;Age=98 B. Index=98;Age=0C. Index=

15、0;Age=0 D. 以上都不對二編程題(溫馨提示:編程時盡量不要使用中文標識符。)1. 編寫一個Java應(yīng)用程序,該程序中有3個類:Lader、Circle和主類A。具體要求如下:1)Lader類具有類型為double的上底、下底、高、面積屬性,具有返回面積的功能,包括一個構(gòu)造方法對上底、下底、高進行初始化。2)Circle類具有類型為double的半徑、周長和面積屬性,具有返回周長、面積的功能,包括一個構(gòu)造方法對半徑進行初始化。3)創(chuàng)建主類,用來測試類Lader和類Circle的功能。1 class Lader double 上底, 下底, 高, 面積;Lader(double a, do

16、uble b, double h) 上底 = a;下底 = b;高 = h;double getArea()/將計算結(jié)果存放在對象的成員變量里面,且作為函數(shù)值返回。面積 = (上底 + 下底) * 高 / 2;return 面積;class Circle double 半徑, 周長, 面積;Circle(double r) 半徑 = r; double getLength() 周長 = 3.14 * 2 * 半徑;return 周長; double getArea() 面積 = 3.14 * 半徑 * 半徑;return 面積;class One public static void main

17、(String args) Lader la = new Lader(3,4,2);/參數(shù)類型相同或相容la.getArea(); /必須先調(diào)用該方法,面積屬性才有相應(yīng)值。System.out.println(梯形的面積為: + la.面積);Circle cr = new Circle(1);System.out.println(圓的周長為: + cr.getLength();System.out.println(圓的面積為: + cr.getArea();2. 建立一個名叫Cat的類,具有屬性:姓名、毛色、年齡;具有行為:顯示姓名、喊叫。編寫主類,在主類中創(chuàng)建一個對象貓,姓名為“妮妮”,毛

18、色為“灰色”,年齡為2歲,在屏幕上輸出該對象的毛色和年齡,讓該對象調(diào)用顯示姓名和喊叫兩個方法。2class Cat String name;String color;int age;void showName()System.out.println(name);void cry()System.out.println(喵喵);public class Two public static void main(String args) Cat c = new Cat();=妮妮;c.color=灰色;c.age=2;System.out.println(color = + c.colo

19、r);System.out.println(age = + c.age);c.showName();c.cry();3. 創(chuàng)建一個叫做People的類,具有屬性:姓名、年齡、性別、身高;具有行為:說話、計算加法、改名;還有能為所有屬性賦值的構(gòu)造方法。創(chuàng)建主類,在主類中創(chuàng)建一個對象:名叫“張三”,性別“男”,年齡18歲,身高1.80;讓該對象調(diào)用成員方法:說出“你好!”,計算23+45的值,并將名字改為“李四”。3. class People String name;int age;char sex;float height;People(String n, int a, char s, flo

20、at h)name = n;age = a;sex = s;height = h;void speak(String s)System.out.println(s);double add(double x, double y)return x+y;void rename(String m)name = m;public class Three public static void main(String args) People zhang3 = new People(張三,18,男,1.80f);zhang3.speak(你好!);System.out.println(23+45= + zh

21、ang3.add(23,45);zhang3.rename(李四);System.out.println();4. 創(chuàng)建一個叫做機動車的類:屬性:車牌號(String),車速(int),載重量(double)。功能:加速(車速自增)、減速(車速自減)、修改車牌號,查詢車的載重量。編寫兩個構(gòu)造方法:一個沒有形參,在方法中將車牌號設(shè)置“XX1234”,速度設(shè)置為100,載重量設(shè)置為100;另一個能為對象的所有屬性賦值。創(chuàng)建主類:創(chuàng)建兩個機動車對象。創(chuàng)建第一個時調(diào)用無參數(shù)的構(gòu)造方法,調(diào)用成員方法使其車牌為“遼A9752”,并讓其加速。創(chuàng)建第二個時調(diào)用有參數(shù)的構(gòu)造方法,使其車牌為

22、“遼B5086”,車速為150,載重為200,并讓其減速。輸出兩輛車的所有信息。4. class VehicleString id;int speed;double load;void upSpeed()+speed;void downSpeed()-speed;void idChanging(String i)id = i;double showLoad()return load;Vehicle()id = XX1234;speed = 100;load = 100;Vehicle(String i, int s, double l)id = i;speed = s;load = l;pub

23、lic class Four public static void main(String args) Vehicle v1 = new Vehicle();v1.idChanging(遼A9752);v1.upSpeed();Vehicle v2 = new Vehicle(遼B5086,150,200);v2.downSpeed();System.out.println(v1.id+,+v1.speed+,+v1.load);System.out.println(v2.id+,+v2.speed+,+v2.load);5. 創(chuàng)建一個point類,有成員變量x、y,方法getX()、setX

24、(),還有一個構(gòu)造方法用于初始化x和y。創(chuàng)建主類來測試它。5. class Point double x,y;Point(double x, double y)this.x=x;this.y=y;public double getX() return x;public void setX(double x) this.x = x;public class Five public static void main(String args) Point p = new Point(1,2);p.setX(3);System.out.println(p.getX();6. 創(chuàng)建一個三角形類,有成員變

25、量三條邊,有方法求周長,創(chuàng)建主類來測試它。6. class Triangledouble a,b,c;double getLength()return a+b+c;public class Six public static void main(String args) Triangle t = new Triangle();t.a = 2;t.b = 3;t.c = 4;System.out.println(周長= + t.getLength();7. 編寫Java應(yīng)用程序。首先,定義一個Print類,它有一個方法void output(int x),1)如果x的值是1,在控制臺打印出大寫的

26、英文字母;2)如果x的值是2,在控制臺打印出小寫的英文字母。其次,再定義一個主類,在主類的main方法中創(chuàng)建Print類的對象,使用這個對象調(diào)用方法output ()來打印出大小寫英文字母。7. class Printvoid output(int x)char c;if (x=1)for(c=A;c=Z;c+)System.out.print(c);if (x=2)for(c=a;c=z;c+)System.out.print(c);System.out.println();public class Seven public static void main(String args) Pri

27、nt p = new Print();p.output(1);p.output(2);8. 編寫Java應(yīng)用程序。首先定義一個描述銀行賬戶的Account類,包括成員變量“賬號” 和“存款余額”,成員方法有“存款”、“取款”和“余額查詢”。其次,編寫一個主類,在主類中測試Account類的功能。class Account String id;double money;void save(double x) money = money + x;void get(double y) money = money - y; void select() System.out.println(余額= + money); public class Eight public static void main(String args) Account kaien = new Account();kaien.save(10000); kaien.get(200); kaien.select();9. 編寫Java應(yīng)用程序。首先,定義一個時鐘類Clock,它包括三個int型成員變量分別表示時、分、秒,一個構(gòu)造方法用于對三個成員變量(時、分、秒)進行初始化,還有一個成員方法show()用于顯示時鐘對象的時間。其次,再定義一個主類,在主類的main

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論