关于Java偶遇的练习题

给出以下代码,请问该程序的运行结果是什么
public  class  Example{
      static  int  x;
      static  public  void  main(String[  ]args){
            x=x+1;
            System.out.println("Value  is"+x);
      }
}
A、代码编译失败,因为main()方法形式不对。
B、代码编译成功,但在运行期第5行抛出一个NullPointerException异常。
C、代码编译成功,打印输出Value  is  1D、代码编译失败,因为变量x未被初始化。

Java类中以static修饰的变量(即静态变量)会在编译期间由系统自动初始化并赋予默认值,所以在我们没有实例化的情况也可以使用。Java中任何变量会在程序运行中通过实例化由系统动态的自动分配内存空间,而静态是在编译后便已分配了内存,并且随着类的存亡而存亡,只要类没有结束退出,静态变量所占有的内存就会一直存在.

所以 static int x=0

下面中哪两个可以在A的子类中使用:( )

class A {
	protected int method1 (int a, int b) {
		return 0;
	}
}
A. public int method 1 (int a, int b) { return 0; }
B. private int method1 (int a, int b) { return 0; }
C. private int method1 (int a, long b) { return 0; }
D. public short method1 (int a, int b) { return 0; }

解答:AC
主要考查子类重写父类的方法的原则:
B,子类重写父类的方法,访问权限不能降低
C,属于重载
D,子类重写父类的方法 返回值类型要相同或是父类方法返回值类型的子类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值