Java程序的输出| 26套
问题1:这个程序的输出是什么?
class A {
public int i;
private int j;
}
class B extends A {
void display()
{
super.j = super.i + 1;
System.out.println(super.i + " " + super.j);
}
}
class inheritance {
public static void main(String args[])
{
B obj = new B();
obj.i = 1;
obj.j = 2;
obj.display();
}
}
一) 2 2
b) 3 3
c) 运行时错误
d) 编译错误
Answer: d
说明: A类包含一个私有成员变量j,它不能被子类B继承。所以在B类中我们不能访问j。所以它会给出编译时错误。
问题2:这个程序的输出是什么?
class selection_statements {
public static void main(String args[])
{
int var1 = 5;
int var2 = 6;
if ((var2 = 1) == var1)
System.out.print(var2);
else
System.out.print(++var2);
}
}
选项:a) 1
b) 2
c) 3
d) 4
Answer: b
说明:在“If”语句中,首先将var2初始化为1,然后检查var2是否等于var1。我们知道 var1 是 5,var2 是 1,所以条件为假,否则部分将被执行。
问题3:这个程序的输出是什么?
class comma_operator {
public static void main(String args[])
{
int sum = 0;
for (int i = 0, j = 0; i < 5 & j < 5; ++i, j = i + 1)
sum += i;
System.out.println(sum);
}
}
选项:
一)5
b) 6
c) 14
d) 编译错误
Answer: b
说明:使用逗号运算符,我们可以在 for 循环的初始化和迭代部分包含多个语句。因此 ++i 和 j = i + 1 都被执行,i 得到值:0, 1, 2, 3,j 得到值:0, 1, 2, 3, 4, 5。
问题4。程序的输出是什么?
class Geeks {
public static void main(String[] args)
{
Geeks g = new Geeks();
g.start();
}
void start()
{
long[] a1 = { 3, 4, 5 };
long[] a2 = fix(a1);
System.out.print(a1[0] + a1[1] + a1[2] + " ");
System.out.println(a2[0] + a2[1] + a2[2]);
}
long[] fix(long[] a3)
{
a3[1] = 7;
return a3;
}
}
选项:
a) 12 15
b) 15 15。
c) 3 4 5 3 7 5
d) 3 7 5 3 7 5
Answer: b
说明:引用变量 a1 和 a3 引用同一个长数组对象。当 fix() 方法被调用时,数组 a1 作为引用传递。因此 a3[1] 的值变为 7,这也将反映在 a1[] 中,因为通过引用调用。所以 a1[] 数组变成了 {3, 7, 5}。当 this 返回到 a2[] 时,它也变成了 {3, 7, 5}。
所以输出:3 + 7 + 5 + ” ” + 3 + 7 + 5 = 15 15
问题5。程序的输出是什么?
class BitShift {
public static void main(String[] args)
{
int x = 0x80000000;
System.out.print(x + " and ");
x = x >>> 31;
System.out.println(x);
}
}
选项:
a) -2147483648 和 1
b) 0x80000000 和 0x00000001
c) -2147483648 和 -1
d) 1 和 -2147483648
Answer: a
解释:选项A是正确的。 >>>运算符将所有位向右移动,零填充左位。位转换如下所示:
Before: 1000 0000 0000 0000 0000 0000 0000 0000
After: 0000 0000 0000 0000 0000 0000 0000 0001
选项 C 是不正确的,因为 >>>运算符零填充了左边的位,在这种情况下,它改变了 x 的符号,如图所示。