JAVA編程作業(yè)姓名講解_第1頁
JAVA編程作業(yè)姓名講解_第2頁
JAVA編程作業(yè)姓名講解_第3頁
JAVA編程作業(yè)姓名講解_第4頁
JAVA編程作業(yè)姓名講解_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、一、填空題1 如果一個方法不返回任何值,則該方法的返回值類型為 void 。2 如果子類中的某個方法名、返回值類型和_參數(shù)列表_與父類中的某個方法完全一致,則稱子類中的這個方法覆蓋了父類的同名方法。3 接口中所有的屬性均為public_、_static_和_final_的4 抽象  方法是一種僅有方法聲明,沒有具體方法體和操作實(shí)現(xiàn)的方法,該方法必須在 抽象 類之中定義。5 在Java程序中,通過類的定義只能實(shí)現(xiàn) extends 重繼承,但通過implements 的定義可以實(shí)現(xiàn)多重繼承關(guān)系。6 一般Java程序的類主體由兩部分組成:一部分是 成員變量 ,另一部分是 成員方法 。7 分

2、別用 class 關(guān)鍵字來定義類,用 new 關(guān)鍵字來分配實(shí)例存儲空間。8 當(dāng)一個類的修飾符為 類 時,說明該類不能被繼承,即不能有子類。9 在Java中,能實(shí)現(xiàn)多重繼承效果的方式是 接口 。二、選擇題1 方法內(nèi)定義的變量(B )。A一定在方法內(nèi)所有位置可見 B可能在方法的局部位置可見C在方法外可以使用 D在方法外可見2 方法的形參( D)。A可以沒有B至少有一個C必須定義多個形參 D只能是簡單變量3 return語句(D)。A不能用來返回對象 B只可以返回數(shù)值C方法都必須含有 D一個方法中可以有多個4 main()方法的返回值類型是(C)。AbooleanBintCvoid Dstatic5

3、 編譯并運(yùn)行下面的程序,運(yùn)行結(jié)果是(C )。public class A public static void main(String args) A a=new A(); a.method(8); void method(int i) System.out.println(“int: ”+i); void method(long i) System.out.println(“l(fā)ong: ”+i); A程序可以編譯運(yùn)行,輸出結(jié)果為:“int: 8” B程序可以編譯運(yùn)行,輸出結(jié)果為:“l(fā)ong: 8” C程序有編譯錯誤,因為兩個method()方法必須定義為靜態(tài)(static)的D程序可以編譯運(yùn)

4、行,但是沒有輸出6 能作為類及其成員的修飾符是(D )。AinterfaceBclassCprotected Dpublic7 下列方法定義中,方法頭不正確的是(C )。Apublic static x(double a) Bpublic static int x(double y)Cvoid x(double d) Dpublic int x()8 構(gòu)造方法在( D )時被調(diào)用。A類定義時B使用對象的變量時C調(diào)用對象方法時 D創(chuàng)建對象時9 下列哪個類聲明是正確的(C )。Apublic abstract class CarBabstract private move()Cprotected

5、private number; Dabstract final class H110 下列不屬于面向?qū)ο蟪绦蛟O(shè)計的基本特征的是(A )。A抽象 B封裝C繼承 D靜態(tài)11 請看下面的程序段class Person String name,department;int age;public Person(String n)name=n;public Person(String n,int a)name=n; age=a;public Person(String n, String d, int a )/doing the same as two arguments version if const

6、ructer下面那個選項可以添加到/ doing the same處( D )APerson(n,a) Bthis(Person(n,a)Cthis(n,a) Dthis(name.age)12 請看下面的程序段class Test private int m;public static void fun() /some code方法fun()如何來訪問變量m( B )A將private int m 改成protected int m B將private int m 改成public int mC將private int m 改成static int m D將private int m 改成i

7、nt m 13 有一個類A,對于其構(gòu)造函數(shù)的聲明正確的是(B )。Avoid A(int x)Bpublic A(int x)CA A(int x)Dint A(int x)14 請看下面的程序段public class Test long a=new long10; pubic static void main(String args)System.out.println(a6);哪一個選項是正確的( D )。A不輸出任何內(nèi)容B輸出0C當(dāng)編譯時有錯誤出現(xiàn) D當(dāng)運(yùn)行時有錯誤出現(xiàn)15 關(guān)鍵字( B)表明一個對象或變量在初始化后不能修改。Aextends BfinalCthis Dfinalize

8、16 聲明為static的方法不能訪問(C )類成員。A超類 B子類C非static D用戶自定義類17 定義類A如下:(重要)class A int a,b,c; public void B(int x,int y, int z) a=x;b=y;c=z;下面對方法B的重載哪些是正確的(C )。Apublic void A(int x1,int y1, int z1) a=x1;b=y1;c=z1;Bpublic void B(int x1,int y1, int z1) a=x1;b=y1;c=z1;Cpublic void B(int x,int y) a=x;b=y;c=0; Dpub

9、lic B(int x,int y, int z) a=x;b=y;c=z;18 編譯運(yùn)行下面的程序,結(jié)果是(D )。(重要)public class A public static void main(String args)B b=new B();b.test(); void test()System.out.print(“A”); class B extends A void test()super.test();System.out.print(“B”); A產(chǎn)生編譯錯誤 B代碼可以編譯運(yùn)行,并輸出結(jié)果:ABC代碼可以編譯運(yùn)行,但沒有輸出 D編譯沒有錯誤,但會產(chǎn)生運(yùn)行時異常19 已知類

10、關(guān)系如下:Class EmployeeClass Manager extends EmployeeClass Director extends Employee則下列語句正確的是:(C )。AEmployee e=new Manager(); BDirector d=new Manager();CDirector d =new Employee (); DManager m=new Director ();20 接口是Java面向?qū)ο蟮膶?shí)現(xiàn)機(jī)制之一,以下說法正確的是(A )。AJava支持多重繼承,一個類可以實(shí)現(xiàn)多個接口BJava只支持單重繼承,一個類可以實(shí)現(xiàn)多個接口CJava只支持單重繼承,

11、一個類可以實(shí)現(xiàn)一個接口 DJava支持多重繼承,但一個類只可以實(shí)現(xiàn)一個接口21下列方法的聲明中不合法的是 C 。Afloat area( )Bvoid area( ) CareaDint area(int r)22、下面哪個包是編程時不需要導(dǎo)入就可以直接使用的 A 。ABjava.langCjava.sqlDjava.util23、調(diào)用構(gòu)造方法是在 B 。A類定義時B創(chuàng)建對象時C調(diào)用對象的方法時D使用對象的變量時24、在子類構(gòu)造方法的哪個地方可以調(diào)用其父類的構(gòu)造方法 A 。A任何地方B構(gòu)造方法的第一條語句 C構(gòu)造方法的最后一條語句 D無法在子類構(gòu)造方法中調(diào)用父類的構(gòu)造方法25、關(guān)于Java中的

12、繼承,下列說法錯誤的是 B 。A繼承是面向?qū)ο缶幊痰暮诵奶卣?,通過繼承可以更有效地組織程序結(jié)構(gòu)。B繼承使得程序員可以在原有類的基礎(chǔ)上很快設(shè)計出一個功能更強(qiáng)的新類,而不必從頭開始,避免了工作上的重復(fù)。C每一次繼承時,子類都會自動擁有父類的屬性和方法,同時也可以加入自己的一些特性,使得它更具體、功能更強(qiáng)大。D繼承一般有多重繼承和單一繼承兩種方式,在單一繼承中每一個類最多只有一個父類,而多重繼承則可以有多個父類。Java中的類都采用多重繼承。26、當(dāng)方法中的局部變量與成員變量同名時,必須使用下列哪一個關(guān)鍵字指出成員變量 C 。AstaticBsuperCthisDnew27、什么樣的方法不能被重寫

13、D 。A私有(private)方法B最終(final)方法C受保護(hù)(protected)的方法D以上都不對28、下列有關(guān)抽象類與接口的敘述中正確的是哪一個 C 。A抽象類中必須有抽象方法,接口中也必須有抽象方法B抽象類中可以有非抽象方法,接口中也可以有非抽象方法C含有抽象方法的類必須是抽象類,接口中的方法必須是抽象方法D抽象類中的變量定義時必須初始化,而接口中不是29、從下列程序中你發(fā)現(xiàn)了幾處錯誤 C 。abstract class Aabstract void f(); public abstract void k(); class B extends Aprotected void f()

14、 void k()System.out.print("I am subclass");public static void main(String args) A a=new A();a.f(); a.k();A1B2C3D430、下列程序運(yùn)行的結(jié)果是 B 。interface InterfaceAString s="good "void f();class ClassA implements InterfaceA public void f()System.out.print(s);class ClassBvoid g(InterfaceA a)a.f

15、();public class E public static void main(String args) ClassB b=new ClassB();b.g(new ClassA();AgoodB編譯正確,但無運(yùn)行結(jié)果C編譯錯誤:b.g(new ClassA()D以上都不對31、下列類的聲明中不合法的是 A 。Aclass People()Bclass 植物 Cclass ADpublic class 共有類32、能作為類的修飾符, 也能作為類成員的修飾符的是 C 。ApublicBextendsCFloatDstatic33、試完成下述程序片段 A 。public class Point

16、int x,y;public Point(int x,int y)( )=x; ( )=y; . APoint.x Point.yBthis.x this.yCsuper.x super.yD無解34、在JAVA 中,下列說法正確的是: B 。A一個子類可以有多個父類,一個父類也可以有多個子類B一個子類可以有多個父類,但一個父類只可以有一個子類C一個子類只可以有一個父類,但一個父類可以有多個子類D上述說法都不對35、Father和Son是兩個java類,下列哪一選項正確的標(biāo)識出Father是Son的父類? A Aclass Son implements FatherBclass Father

17、implements SonCclass Father extends SonDclass Son extends Father 36、重載指的是方法具有相同的名字,但這些方法的參數(shù)必須不同。下列哪種說法不屬于方法參數(shù)的不同C 。A形式參數(shù)的個數(shù)不同。B形式參數(shù)的類型不同。C形式參數(shù)的名字不同。D形式參數(shù)類型的排列順序不同。37、下列有關(guān)抽象類與接口的敘述中正確的是哪一個 B 。A抽象類中必須有抽象方法,接口中也必須有抽象方法B抽象類中可以有非抽象方法,接口中也可以有非抽象方法C含有抽象方法的類必須是抽象類,接口中的方法必須是抽象方法D抽象類中的變量定義時必須初始化,而接口中不是38、從下列程

18、序中你發(fā)現(xiàn)了幾處錯誤 D 。abstract class Aabstract void f(); public abstract void k(); class B extends Aprotected void f() void k()System.out.print("I am subclass");public static void main(String args) A a=new A();a.f(); a.k();A1B2C3D439、關(guān)于接口的定義和實(shí)現(xiàn),以下描述正確的是 C 。A接口定義的方法只有定義沒有實(shí)現(xiàn)B接口定義中的變量都必須寫明final和stati

19、cC如果一個接口由多個類來實(shí)現(xiàn),則這些類在實(shí)現(xiàn)該接口中的方法時采用統(tǒng)一的代碼D如果一個類實(shí)現(xiàn)接口,則必須實(shí)現(xiàn)該接口中的所有方法,但方法未必申明為public三、閱讀程序題1、寫出運(yùn)行結(jié)果: mainboard:華碩,cpu:Intel 。public class ComputerString mainbord,cpu;public Computer(String s1,String s2)mainbord=s1;cpu=s2;public static void main(Stringargs)Computer c=new Computer("華碩","Intel

20、");System.out.println("mainbord:"+c.mainbord+",cpu:"+c.cpu);2、寫出運(yùn)行結(jié)果: 。public class ExamA private static int arr = new int5; public static void main(String args) for(int i=arr.length-1;i>=0;i-) arri = 2*i+1; String output = "0" int sum = 0; for(int i=0;i<arr.

21、length;i+) sum += arri; output += " + " + arri; output += " = "+sum; System.out.println(output); System.exit(0); 3、寫出運(yùn)行結(jié)果: 。public class PersonString name;int age;public Person(String name,int age)=name;this.age=age;public static void main(Stringargs)Person c=new Person(

22、"Peter",17);System.out.println(+" is "+c.age+" years old!");4、寫出運(yùn)行結(jié)果: 。public   class   abcpublic   static   void    main(String   args ) SubSubClass   x = new   SubSubClass(10 ,

23、20 , 30);x.show();class   SuperClass    int   a,b;SuperClass(int aa , int   bb)   a=aa;   b=bb;   void   show( )   System.out.println("a="+a+" b="+b);   class   

24、; SubClass    extends    SuperClass   int c;SubClass(int   aa,int   bb,int   cc)    super(aa,bb);c=cc; class    SubSubClass    extends    SubClass   

25、int   a;SubSubClass(int aa,int   bb,int   cc)    super(aa,bb,cc);a=aa+bb+cc;void   show() System.out.println("a="+a+" b="+b+" c="+c);   5下面是一個類的定義,請將其補(bǔ)充完整 class _ String name; int age; Student(_ name,

26、 int a) _.name=name; age=a; 6下面是一個類的定義,請將其補(bǔ)充完整 class _ String s; _ int a=3; A(String s) this.s=s; static int getA() return a;四、編程題1按要求編寫一個Java應(yīng)用程序:(1)定義一個接口CanCry,描述會吼叫的方法public void cry()。(2)分別定義狗類(Dog)和貓類(Cat),實(shí)現(xiàn)CanCry接口。實(shí)現(xiàn)方法的功能分別為:打印輸出“我是狗,我的叫聲是汪汪汪”、“我是貓,我的叫聲是喵喵喵”。(3)定義一個主類G, 定義一個void makeCry(Can

27、Cry c)方法,其中讓會吼叫的事物吼叫。在main方法中創(chuàng)建狗類對象(dog)、貓類對象(cat)、G類對象(g),用g調(diào)用makecry方法,讓狗和貓吼叫。1.(1)Public interface CanCryPublic void cry();(2)public class Cat implemens CanCryPublic void cry()System.out.printfln(“我是狗,我的叫聲是汪汪汪”);(3) public class Dog implemens CanCryPublic void cry()System.out.printfln(“我是貓,我的叫聲是喵

28、喵喵”);(4)public class GVoid makeCry(CanCry c)c.cry();Public static void main(String args)Cat cat=new Cat();Dog dog=new Dog();G g=new G();g.makeCry(cat);g.makeCry(dog);2、編寫一個Java程序,并滿足如下要求:1)編寫一個Car類,具有:屬性:品牌(mark)String類型功能:駕駛(void drive( ))2)定義Car類的子類SubCar,具有:屬性:價格(price)、速度(speed)int型功能:變速(void speedChange(int newSpeed)),把新速度賦給speed3)定義主類E,在其main方法中創(chuàng)建SubCar類的兩個對象:aodi和benchi的對象并測試其對象的特性。4)輸出效果如下:3某公司正進(jìn)行招聘工作,被招聘人員需要填寫個

溫馨提示

  • 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

提交評論