/**
* 10道题系列会持续更新,每日的10道题都是我做过的,做错或者觉得需要复习的有价值的
* 请关注我,每日和我一同进步,有更好的建议或有问题的请在评论区提出或私信我
*/
1.下列关于构造函数的描述中,错误的是()
A.构造函数可以设置默认的参数B.构造函数在定义类对象时自动执行
C.构造函数可以是内联函数
D.构造函数不可以重载
2.What results from the following code fragment?
int i = 5;
int j = 10;
System.out.println(i + ~j);
A.Compilation error because”~”doesn’t operate on integers
B.-5
C.-6
D.15
3.下面有关forward和redirect的描述,正确的是() ?
A.forward是服务器将控制权转交给另外一个内部服务器对象,由新的对象来全权负责响应用户的请求B.执行forward时,浏览器不知道服务器发送的内容是从何处来,浏览器地址栏中还是原来的地址
C.执行redirect时,服务器端告诉浏览器重新去请求地址
D.forward是内部重定向,redirect是外部重定向
E.redirect默认将产生301 Permanently moved的HTTP响应
4.下面有关servlet的层级结构和常用的类,说法正确的有?
A.GenericServlet类:抽象类,定义一个通用的、独立于底层协议的Servlet。B.大多数Servlet通过从GenericServlet或HttpServlet类进行扩展来实现
C.ServletConfig接口定义了在Servlet初始化的过程中由Servlet容器传递给Servlet得配置信息对象
D.HttpServletRequest接口扩展ServletRequest接口,为HTTP Servlet提供HTTP请求信息
5.JDK提供的用于并发编程的同步器有哪些?
A.SemaphoreB.CyclicBarrier
C.CountDownLatch
D.Counter
6.关于volatile关键字,下列描述不正确的是?
A.用volatile修饰的变量,每次更新对其他线程都是立即可见的。
B.对volatile变量的操作是原子性的。
C.对volatile变量的操作不会造成阻塞。
D.不依赖其他锁机制,多线程环境下的计数器可用volatile实现。
7.
1
2
3
4
5
6
7
8
9
|
void
waitForSignal()
{
Object obj =
new
Object();
synchronized
(Thread.currentThread())
{
obj.wait();
obj.notify();
}
}
|
A.This code may throw an InterruptedException
B.This code may throw an IllegalStateException
C.This code may throw a TimeOutException after ten minutes
D.This code will not compile unless”obj.wait()”is replaced with”(Thread)obj).wait()”
E.Reversing the order of obj.wait()and obj.notify()may cause this method to complete normally
8.以下集合对象中哪几个是线程安全的?( )
A.ArrayListB.Vector
C.Hashtable
D.Stack
9.以下描述错误的一项是( )
A.程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行 到了第几行,是线程隔离的
B.原则上讲,所有的对象都是在堆区上分配内存,是线程之间共享的
C.方法区用于存储JVM加载的类信息、常量、静态变量,即使编译器编译后的代码等数据,是线程隔离的
D.Java方法执行内存模型,用于存储局部变量,操作数栈,动态链接,方法出口等信息,是线程隔离的
10.代码输出结果是
- public class Test {
- public static void main(String [] args){
- System.out.println(new B().getValue());
- }
- static class A{
- protected int value;
- public A(int v) {
- setValue(v);
- }
- public void setValue(int value){
- this.value = value;
- }
- public int getValue(){
- try{
- value++;
- return value;
- } catch(Exception e){
- System.out.println(e.toString());
- } finally {
- this.setValue(value);
- System.out.println(value);
- }
- return value;
- }
- }
- static class B extends A{
- public B() {
- super(5);
- setValue(getValue() - 3);
- }
- public void setValue(int value){
- super.setValue(2 * value);
- }
- }
- }
B.22 74 74
C.6 7 7
D.22 34 17