场景:
在练习
错题
错题1描述:
下面代码的运行结果是()
public static void main(String[] args){
String s;
System.out.println("s="+s);
}
选项
A. 代码编程成功,并输出”s=”
B. 代码编译成功,并输出”s=null”
C. 由于String s没有初始化,代码不能编译通过。
D. 代码编译成功,但捕获到NullPointException异常
原因分析:
既不是null也不是“”
答案:C
错题2描述:
对于线程局部存储TLS(thread local storage),以下表述正确的是
A. 解决多线程中的对同一变量的访问冲突的一种技术
B. TLS会为每一个线程维护一个和该线程绑定的变量的副本
C. 每一个线程都拥有自己的变量副本,从而也就没有必要对该变量进行同步了
D. Java平台的java.lang.ThreadLocal是TLS技术的一种实现
原因分析:
答案: A B D
错题3描述:
java中关于继承的描述正确的是()
A. 一个子类只能继承一个父类
B. 子类可以继承父类的构造方法
C. 继承具有传递性
D. 父类一般具有通用性,子类更具体
原因分析:
子类不可以继承父类的构造方法,只可以调用父类的构造方法。子类中所有的构造函数都会默认访问父类中的空参数构造函数,这是因为子类的构造函数内第一行都有默认的super()语句。
答案: A C D
错题4描述:
下列选项中是正确的方法声明的是?()
A. protected abstract void f1();
B. public final void f1() {}
C. static final void fq(){}
D. private void f1() {}
原因分析:
答案:A B C D
错题5描述:
以下哪种JAVA得变量声明方式可以避免程序在多线程竞争情况下读到不正确的值( )
A. volatile
B. static volatile
C. synchronized
D. static
原因分析:
答案:A B