下面程序段的輸出結(jié)果為()。packagetest;publicclassClassA{intx=20;staticinty=6;publicstaticvo
下面程序段的輸出結(jié)果為( )。 packagetest; publicclassClassA { intx=20; staticinty=6; publicstaticvoidmain(Stringargs[]) { ClassBb=newClassB(); b.go(10); System.out.println("x="+b.x); } } classClassB { intX; voidgo(inty) { ClassAa=newClassA(); X=a.y; } }
A.x=10
B.x=20
C.x=6
D.編譯不通過
正確答案:C解析: 本題考查在Java中靜態(tài)變量(類變量)的用法。在題目程序段中生成了一個staticinty=6類變量,在ClassA中調(diào)用的b.go(10),只不過是在ClassB中的一個局部變量,通過調(diào)用ClassB中的go方法可以生成一個ClassA劉象,并給這個新生成的對象賦以ClassA中的類變量y的值。從main()方法作為入口執(zhí)行程序,首先生成一個ClassB的對象,然后b.go(10)會調(diào)用ClassA,會給x和y賦值,x=a.y后,x值為6,再返回去執(zhí)行System.out.println("
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。