下面程序段的输出结果为()。publicclass Test{int a,b;Test(){a=100;b=200;}Test(intx,inty){a=X;

11 查阅

下面程序段的输出结果为( )。 publicclass Test { int a,b; Test() { a=100; b=200; } Test(intx,inty) { a=X; b=y; } publicstaticvoidmain(Stringargs[]) { TestObj1=newTest(12,45); System.out.println("a="+Obj1.a+" b="+Obj1.b); TestObj2=newTest(); System.out.println("a="+Obj2.a+"b="+Obj2.b); } }

A.a=100b=200 a=12 b=45

B.a=12 b=45 a=100b=200

C.a=12 b=200 a=100b=45

D.a=100b=45 a=12 b=200

参考答案:

B解析: 本题考查构造方法及构造方法重载。Test类有两个构造方法,即使用了方法重载技术。不带参数的构造方法对类的实例变量进行特定数值的赋值,而带参数的构造方法根据参数对类的实例变量进行赋值。TestObjl-newTest(12,45)语句调用的是 Test(intx,inty),而TestObj2=newTest()调用的是Test(),注意根据参数个数来区分。

计算机二级