2-面向?qū)ο蠡A(chǔ)測試題和答案_第1頁
2-面向?qū)ο蠡A(chǔ)測試題和答案_第2頁
2-面向?qū)ο蠡A(chǔ)測試題和答案_第3頁
2-面向?qū)ο蠡A(chǔ)測試題和答案_第4頁
2-面向?qū)ο蠡A(chǔ)測試題和答案_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

共40道選擇題,每題2.5分。多選題有錯(cuò)則全錯(cuò),全對才滿分.面向?qū)ο蟛糠譁y試題下面描述函數(shù)重寫錯(cuò)誤的是C A. 要有子類繼承或?qū)崿F(xiàn) B. 子類方法的權(quán)限必須大于等于父類的權(quán)限 C. 父類中被private權(quán)限修飾的方法可以被子類重寫 D. 子類重寫接口中的抽象方法,子類的方法權(quán)限必須是public的關(guān)于封裝下面介紹錯(cuò)誤的是(D)。 A. 封裝將變化隔離 B. 封裝提高重用性。 C. 封裝安全性 D. 只有被private修飾才叫做封裝試圖編譯運(yùn)行下面的代碼會(huì)發(fā)生什么情況DpublicclassMyClass{staticinti;publicstaticvoidmain(String[]args){System.out.println(i);}} A. 錯(cuò)誤,變量i沒有被初始化 B. 輸出null C. 輸出1 D. 輸出0在Java中,下面對于構(gòu)造函數(shù)的描述正確的是(D)。 A. 類必須顯式定義構(gòu)造函數(shù) B. 構(gòu)造函數(shù)的返回類型是void C. 構(gòu)造函數(shù)和類有相同的名稱,并且不能帶任何參數(shù) D. 一個(gè)類可以定義多個(gè)構(gòu)造函數(shù)下面Java代碼的運(yùn)行結(jié)果是(C)。classPenguin{ privateStringname=null;//名字 privateinthealth=0;//健康值 privateStringsex=null;//性別 publicvoidPenguin(){//是一般方法,不是構(gòu)造方法 health=10; sex="雄"; System.out.println("執(zhí)行構(gòu)造方法。"); } publicvoidprint(){ System.out.println("企鵝的名字是"+name+ ",健康值是"+health+",性別是"+sex+"。"); } publicstaticvoidmain(String[]args){ Penguinpgn=newPenguin(); pgn.print(); }} A. 企鵝的名字是null,健康值是10,性別是雄。 B. 執(zhí)行構(gòu)造方法。 企鵝的名字是null,健康值是0,性別是null。 C. 企鵝的名字是null,健康值是0,性別是null。 D. 執(zhí)行構(gòu)造方法。 企鵝的名字是null,健康值是10,性別是雄。class

A

{public

int

i

=

10;

}在Java中,以下程序編譯運(yùn)行后的輸出結(jié)果為(D)。publicclassTest{intx,y;Test(intx,inty){this.x=x;this.y=y;}publicstaticvoidmain(String[]args){Testpt1,pt2;pt1=newTest(3,3);pt2=newTest(4,4);System.out.print(pt1.x+pt2.x);}} A. 6 B. 34 C. 8 D. 7在Java語言中,下列關(guān)于類的繼承的描述,正確的是(B)。 A. 一個(gè)類可以繼承多個(gè)父類 B. 一個(gè)類可以具有多個(gè)子類 C. 子類可以使用父類的所有方法 D. 子類一定比父類有更多的成員方法Java中,如果類C是類B的子類,類B是類A的子類,那么下面描述正確的是(A)。 A. C可以繼承B中的公有成員,同樣也可以繼承A中的公有成員 B. C只繼承了B中的成員 C. C只繼承了A中的成員 D. C不能繼承A或B中的成員給定一個(gè)Java程序Test.java的代碼如下所示,編譯時(shí),會(huì)出現(xiàn)以下(C)情況。classParent{ publicintcount(){//第1行 return0; }}publicclassTestextendsParent{ publicfloatcount(){//第2行 return9;//第3行 }} A. 編譯通過 B. 在第1行引發(fā)編譯錯(cuò)誤 C. 在第2行引發(fā)編譯錯(cuò)誤 D. 在第3行引發(fā)編譯錯(cuò)誤給定如下一個(gè)Java源文件Child.java,編譯并運(yùn)行Child.java,以下結(jié)果正確的是(B)。classParent1{Parent1(Strings){System.out.println(s);}}classParent2extendsParent1{Parent2(){System.out.println("parent2");}}publicclassChildextendsParent2{publicstaticvoidmain(String[]args){Childchild=newChild();}} A. 編譯錯(cuò)誤:沒有找到構(gòu)造器Child() B. 編譯錯(cuò)誤:沒有找到構(gòu)造器Parent1()//因?yàn)楫?dāng)我們給出了構(gòu)造方法,系統(tǒng)將不再提供默認(rèn)的無參構(gòu)造函數(shù) C. 正確運(yùn)行,沒有輸出值 D. 正確運(yùn)行,輸出結(jié)果為:parent2給定Java程序Child.java的代碼如下所示,則編譯運(yùn)行該類的結(jié)果是(C)。classParent{Parent(){System.out.println("parent");}}publicclassChildextendsParent{Child(Strings){System.out.println(s);}publicstaticvoidmain(String[]args){Childchild=newChild("child");}} A. child B. child parent C. parent child D. 編譯錯(cuò)誤下列選項(xiàng)中關(guān)于Java中super關(guān)鍵字的說法錯(cuò)誤的是(B)。 A. 當(dāng)子父類中成員變量重名的時(shí)候,在子類方法中想輸出父類成員變量的值,可以用super區(qū)分子父類成員變量 B. super語句可以放在構(gòu)造函數(shù)的任意一行 C. 子類可以通過super關(guān)鍵字調(diào)用父類的方法 D. 子類可以通過super關(guān)鍵字調(diào)用父類的屬性分析如下所示的Java代碼,則選項(xiàng)中的說法正確的是(C)。classParent{ publicStringname; publicParent(StringpName){ =pName; }}publicclassTestextendsParent{//1 publicTest(StringName){//2 name="hello";//3 super("kitty");//4 } } A. 第2行錯(cuò)誤,Test類的構(gòu)造函數(shù)中參數(shù)名稱應(yīng)與其父類構(gòu)造函數(shù)中的參數(shù)名相同 B. 第3行錯(cuò)誤,應(yīng)使用super關(guān)鍵字調(diào)用父類的name屬性,改為="hello"; C. 第4行錯(cuò)誤,調(diào)用父類構(gòu)造方法的語句必須放在子類構(gòu)造方法中的第一行 D. 程序編譯通過,無錯(cuò)誤以下關(guān)于Object類說法錯(cuò)誤的是(B)。 A. 一切類都直接或間接繼承自O(shè)bject類 B. 接口也繼承Object類 C. Object類中定義了toString()方法 D. Object類在java.lang包中在Java中,多態(tài)的實(shí)現(xiàn)不僅能減少編碼的工作量,還能大大提高程序的可維護(hù)性及可擴(kuò)展性,下面哪一個(gè)選項(xiàng)不屬于多態(tài)的條件(B)。 A. 子類重寫父類的方法 B. 子類重載同一個(gè)方法 C. 要有繼承或?qū)崿F(xiàn) D. 父類引用指向子類對象給定Java代碼如下所示,則編譯運(yùn)行后,輸出結(jié)果是(C)。classParent{publicvoidcount(){System.out.println(10%3);}}publicclassChildextendsParent{publicvoidcount(){System.out.println(10/3);}publicstaticvoidmain(Stringargs[]){Parentp=newChild();p.count();}} A. 1 B. 1.0 C. 3 D. 3.3333333333333335編譯運(yùn)行如下Java代碼,輸出結(jié)果是(D)。classBase{ publicvoidmethod(){ System.out.print("Basemethod"); }}classChildextendsBase{ publicvoidmethodB(){ System.out.print("ChildmethodB"); }}classSample{ publicstaticvoidmain(String[]args){ Basebase=newChild(); base.methodB(); }} A. Basemethod B. ChildmethodB C. BasemethodChildMethodB D. 編譯錯(cuò)誤在Java接口中,下列選項(xiàng)中屬于有效的方法聲明是(A)。 A. publicvoidaMethod(); B. finalvoidaMethod(); C. voidaMethod(){} D. privatevoidaMethod();給定如下Java程序代碼,在_____橫線處加入(A)語句,可以使這段代碼編譯通過。interfaceParent{publicintcount(inti);}publicclassTestimplementsParent{publicintcount(inti){returni%9;} publicstaticvoidmain(String[]args){________________inti=p.count(20);}} A. Testp=newTest(); B. Parentp; C. Parentp=newParent(); D. Testp=newParent();下面說法中錯(cuò)誤的是D靜態(tài)代碼塊類一加載只執(zhí)行一次,以后再創(chuàng)建對象的時(shí)候不執(zhí)行局部代碼塊的作用是為了限制變量的生命周期C. 構(gòu)造代碼塊在每創(chuàng)建一次對象就執(zhí)行一次D. 以上都不對在Java中,如果父類中的某些方法不包含任何邏輯,并且需要有子類重寫,應(yīng)該使用(C)關(guān)鍵字來聲明父類的這些方法。

A. final

B. static

C. abstract

D. void給定兩個(gè)java程序,如下:publicinterfaceFace{intcounter=40;}publicclassTestimplementsFace{privatestaticintcounter;publicstaticvoidmain(String[]args){System.out.println(++counter);}}Test.java的編譯運(yùn)行結(jié)果是(D)。A. 40B. 41C. 0D. 1給定java代碼,如下:

public

class

Test{

static

int

i;

public

int

aMethod(

){

i++;

return

i;

}

public

static

void

main(String

[]

args){

Test

test

=

new

Test(

);

test.aMethod(

);

System.out.println(test.aMethod(

));

}

}編譯運(yùn)行后,輸出結(jié)果是(C

)。

A. 0

B. 1

C. 2

D. 3

給定java程序,如下:

public

class

Test{

private

static

final

int

counter=10;

public

static

void

main(String

[]

args){

System.out.println(++counter);

}

}

編譯運(yùn)行Test.java,結(jié)果是

C)

A. 10

B. 11

C. 編譯錯(cuò)誤

D. 運(yùn)行時(shí)出現(xiàn)異常

給定一個(gè)Java程序代碼,如下:

public

class

Test{

int

count

=

9;

public

void

count1(){

int

count

=10;

System.out.println("count1="+count);

}

public

void

count2(){

System.out.println("count2="+count);

}

public

static

void

main(String

args[]){

Test

t=new

Test();

t.count1();

t.count2();

}}

編譯運(yùn)行后,輸出結(jié)果是BA. count1=9

count2=9

B. count1=10

count2=9

C. count1=10

count2=10

D. count1=9

count2=10

給定java代碼,如下:編譯運(yùn)行,結(jié)果是A

public

static

void

main

(String

[]

args){

String

s;

System.out.println(“s=”+s);

}

A. 編譯錯(cuò)誤

B. 編譯通過,但出現(xiàn)運(yùn)行時(shí)錯(cuò)誤

C. 正常運(yùn)行,輸出s=null

D. 正常運(yùn)行,輸出s=

在java中,以下程序的輸出結(jié)果是(C)。

class

Point

{

int

x;

boolean

y;

void

output()

{

System.out.println(x);

System.out.println(y);

}

public

static

void

main(String[]

args)

{

Point

pt

=new

Point();

pt.output();

}

}

A. 運(yùn)行錯(cuò)誤

B. 0

ture

C. 0

false

D. 0

0

多選擇題:給定如下

java

代碼,

以下(AD)訪問控制修飾符可以填入下劃線處。

class

Parent{

protected

void

eat(){}

}

class

Child

extends

Parent{

_______

void

eat(){}

}

A. protected

B. private

C. 什么也不填//及默認(rèn)修飾符

D. public給定如下Java代碼,以下(ABC)AB方法可以加入Child類中。publicclassParent{intchange(){…}}ClassChildextendsParent{(此處可以放入下面哪個(gè)選項(xiàng))}A. publicintchange(){}B. intshow(inti){}C. privateintchange(){}//private的權(quán)限低于默認(rèn)修飾符D. abstractintchange(){}下面對static的描述正確的是ACDA. 靜態(tài)修飾的成員變量和成員方法隨著類的加載而加載B. 靜態(tài)修飾的成員方法可以訪問非靜態(tài)成員變量C. 靜態(tài)修飾的成員可以被整個(gè)類對象所共享D. 靜態(tài)修飾的成員變量和成員方法隨著類的消失而消失給定java代碼,如下:

abstract

class

Shape

{

abstract

void

draw(

);

}

要?jiǎng)?chuàng)建Shape類的子類Circle,以下代碼正確的是(BD)。

A. class

Circle

extends

Shape{

int

draw(

){}

}

B. abstract

class

Circle

extends

Shape{

}

C. class

Circle

extends

Shape{

void

draw(

);

}

D. class

Circle

extends

Shape{

void

draw(

){}

}

在Java中,下面關(guān)于抽象類的描述正確的是(BD)。

A. 抽象類可以被實(shí)例化

B. 如果一個(gè)類中有一個(gè)方法被聲明為抽象的,那么這個(gè)類必須是抽象類

C. 抽象類中的方法必須都是抽象的

D. 聲明抽象類必須帶有關(guān)鍵字abstract

在java中,已定義了兩個(gè)接口B和C以下語句正確的是

AC)

A. interface

A

extends

B,C

B. interface

A

implements

B,C

C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論