下面程序段的输出结果为( )。 package test ; public class Class A {i nt x=20; static i nt y =6; public static void mai n(Stri ng args[]) { Cl

admin2012-12-02  22

问题 下面程序段的输出结果为(  )。
package test ;
public class Class A
{i nt x=20;
static i nt y =6;
public static void mai n(Stri ng args[])

ClassBb =ne w ClassB();
b .go(10);
Syste m.out .pri ntln("x="+b .x);


class ClassB {i nt x;
void go(i nt y)

Class Aa=ne w Class A();
x=a.y ;


选项 A、x=10
B、x=20
C、x=6
D、编译不通过

答案C

解析 本题考查在Java 中静态变量(类变量)的用法。在题目程序段中生成了一个static i nt y =6类变量,在Class A 中调用的b .go(10),只不过是在ClassB中的一个局部变量,通过调用ClassB 中的go 方法可以生成一个Class A 对象,并给这个新生成的对象赋以Class A 中的类变量y 的值。从mai n()方法作为入口执行程序,首先生成一个ClassB的对象,然后b .go(10)会调用Class A,会给x 和y赋值,x =a.y 后,x 值为6,再返回去执行Syste m.out .pri ntln("x="+b .x)语句,输出为x=6,可见,正确答案为选项C。
转载请注明原文地址:https://kaotiyun.com/show/KBID777K
0

相关试题推荐
最新回复(0)