[單項(xiàng)選擇題] 下面程序段的輸出結(jié)果為 package test; public class ClassA int x=20; static i
[單項(xiàng)選擇題] 下面程序段的輸出結(jié)果為
package test;
public class ClassA
int x=20;
static int y=6;
public static void main(String args[])
ClassB b=new ClassB();
b.go(10);
System.out.println("x="+b.x);
class ClassB
int x;
void go(int y)
ClassA a=new ClassA();
x=a.y;
A.x=10
B.x=20
C.x=6
D.編譯不通過
正確答案:C
參考解析:本題考查在Java中靜態(tài)變量(類變量)的用法。在題目程序段中生成了一個(gè)static int y=6類變量,在ClassA中調(diào)用的 b.go(10),只不過是在ClassB中的一個(gè)局部變量,通過調(diào)用ClassB中的go方法可以生成一個(gè)ClassA對(duì)象,并給這個(gè)新生成的對(duì)象賦以ClassA中的類變量y的值。從main()方法作為入口執(zhí)行程序,首先生成一個(gè)ClassB的對(duì)象,然后b.go(10)會(huì)調(diào)用 ClassA,會(huì)給x和y賦值,x=a.y后,x值為6,再返回去執(zhí)行System.out.println("x="/b.x)語句,輸出為x=6,可見,正確答案為選項(xiàng)C。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。