计算机二级

请阅读下面的代码class A{int x;static int y;void fac(String s){System.out.println(“字符串:”+s);}}下列选项中描述正确的是()A.x , y和s 都是成员变量B.x 是实例变量,y是类变量,s是局部变量C.x和y是实例变量,s是参数D.x ,y和s都是实例变量

题目
请阅读下面的代码class A{int x;static int y;void fac(String s){System.out.println(“字符串:”+s);}}下列选项中描述正确的是()

A.x , y和s 都是成员变量

B.x 是实例变量,y是类变量,s是局部变量

C.x和y是实例变量,s是参数

D.x ,y和s都是实例变量

参考答案和解析
答案:B
解析:在方法中声明的s是局部变量,使用static关键字修饰的y是类变量,在类中定义的x是实例变量。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

阅读下列代码

Public class Person{

Static int arr[ ] = new int (10);

Public static void main (String args ) {

System.out.println(arr[9]);

}

}

该代码运行的结果是

A )编译时将产生错误

B )编译时正确,运行时将产生错误

C )输出 0

D )输出空


正确答案:C

第2题:

下列代码的执行结果是 ( )public class Test2{public static void main(String args[]){int a=4,b=6,c=8;String s="abc";System.out.println(a+b+s+c);}}

A.ababcc

B.464688

C.46abc8

D.10abc8


正确答案:D
解析:该题考查的是int型和String型的混合运算。本题中先算a+b=10,然后再和String型的s相连起来变为字符串10abc,最后在用“+”号把int型的8连起来,结果也是String型的,即10abc8。所以选项D是正确的。

第3题:

阅读下面程序

public class Test3{

public static void main(String args[]){

int x=3,y=4,z=5;

String s= " xyz " ;

System.out.println(s+x+y+z);

}

}

程序运行的结果是

A)xyz12

B)xyz345

C)xyzxyz

D)12xyz


正确答案:B

第4题:

下列代码的执行结果是( )。 public class Test { public static void main (String args[]) { int a=3,b=5,c=8; String s="abc"; System.out.println(a+b+s+c); } }

A.35abc8

B.8abc8

C.16

D.abc


正确答案:B
解析:Java表达式的同级运算符从左到右进行,括号可以改变优先级。+在Java中既是算术的加号,也可以作为字符串的连接符号。本题中a与b先进行算术加运算,得结果为8,由于s的值为String类型,所以数值8与s作连接运算,得结果为字符串“8abc”,最后再与c的值作连接运算,得结果为“8abc8”。

第5题:

下列程序段运行的结果为 public class Test{ static void print(String s,int i){ System.out.println("String:"+s+",int:"+i); } static void print(int i, String s){ System.out.println("int:"+i+",String:"+s); } public static void main(String [] args){ print(99,"Int first"); } }

A.String:Stringfirst,int:11

B.int:11,String:Int first

C.String:String first,int:99

D.int:99,String:int first


正确答案:D
解析:本题考查考生阅读程序的能力。JavaApplication都是以main()方法作为入口,首先执行的是print(99,“Intfirst”),根据构造方法的参数类型选择调用方法,这里调用的是print(inti,Strings)方法,因此输出的是int:99,String:Intfirst。

第6题:

下面程序段的输出结果为 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中静态变量(类变量)的用法。在题目程序段中生成了一个static int y=6类变量,在ClassA中调用的 b.go(10),只不过是在ClassB中的一个局部变量,通过调用ClassB中的go方法可以生成一个ClassA对象,并给这个新生成的对象赋以ClassA中的类变量y的值。从main()方法作为入口执行程序,首先生成一个ClassB的对象,然后b.go(10)会调用 ClassA,会给x和y赋值,x=a.y后,x值为6,再返回去执行System.out.println("x="/b.x)语句,输出为x=6,可见,正确答案为选项C。

第7题:

执行下列代码段之后,变量z的值为______。 Public class Test8 { public static void main(String[] args) { int x=2; int y=3; int z=4; z-....= y-x--; System.out.println(z); }

A.1

B.2

C.3

D.4


正确答案:D
解析:表达式中的运算次序应该是先对y做减量运算,得到y=2,然后再取x的值x=2,做减法运算得到0,最后用z减去0,得到答案为4。

第8题:

下列程序段运行的结果为 public class Test{ static void print(String s,int i){ System.out.println("String:"+s+",int:"+i); } static void print(int i,String s){ System.out.println("int:"+i+",String:"+s); } public static void main(String[]args){ print(99,"Int first"); } }

A.String:String first,int:11

B.int:11,String:Int first

C.String:String first,int99

D.int:99,String:Int first


正确答案:D
解析:本题考查考生阅读程序的能力。JavaApplication都是以main()方法作为入口,首先执行的是print(99,"Int first"),根据构造方法的参数类型选择调用方法,这里调用的是print(int i,String s)方法,因此输出的是int:99,String:Int first。

第9题:

阅读下面程序 public class Test3 { public static void main(String[] args) { int x=3,y=4,z=5; String s="xyz": System.out.println(s+x+y+z); } } 程序运行的结果是

A.xyz12

B.xyz345

C.xyzxyz

D.12xyz


正确答案:B
解析:Java中对+运算符的功能进行了扩展,使其能够进行字符串连接。如"xyz"+"rst"结果为"xyzrst","xyz"+3结果为"xyz3"。如果运算符+的第一个操作数不是字符串,则运算结果由后续的操作数决定,如3+4+5+"xyz"的结果是"12xyz",而不是"345xyz"。

第10题:

执行下面程序,显示的结果为( )。 public class Test { public static void main (String args[]) { Test t=newTest(); System.out.println (Loverload ("2","3")); } int overload (intx,int y) {return x+y;} String overload (String x,Stnng y){return x+y;} }

A.2

B.3

C.5

D.23


正确答案:D
解析:本题考查方法重载相关知识。方法的重载是指多个方法可以享用相同的名字,但参数的数量或类型必须不完全相同、即方法体有昕不同。使用该方法时,编译系统会根据实参类型选择执行相应的方法。本题中,在调用overload()方法时,实参为字符串,因此会调用String overload (String x,String y)方法,该方法返回两实参连接后的结果,所以返回值为“23”。

更多相关问题