java题目

1.

What will be printed when you execute thefollowing code?
class C {
   C() {
       System.out.print("C");
    }
}
 
class A {
    Cc = new C();
 
   A() {
       this("A");
       System.out.print("A");
    }
 
   A(String s) {
       System.out.print(s);
    }
}
 
class Test extends A {
   Test() {
       super("B");
       System.out.print("B");
    }
 
   public static void main(String[] args) {
       new Test();
    }
}
 

A.BB        B.CBB      C.BAB                D.None of the above

正确答案: B  

初始化过程是这样的: 

1.首先,初始化父类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化; 

2.然后,初始化子类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化; 

3.其次,初始化父类的普通成员变量和代码块,在执行父类的构造方法;

4.最后,初始化子类的普通成员变量和代码块,在执行子类的构造方法; 

 

1)初始化父类的普通成员变量和代码块,执行 C c = new C();输出

2super("B");表示调用父类的构造方法,不调用父类的无参构造函数,输出

3 System.out.print("B"); 

 所以输出CBB

2. 下面有关servlet service描述错误的是?

A.不管是post还是get方法提交过来的连接,都会在service中处理

B.doGet/doPost 则是在javax.servlet.GenericServlet中实现的

C.service()是在javax.servlet.Servlet接口中定义的

D.service判断请求类型,决定是调用doGet还是doPost方法

正确答案: B  

基本功能:service方法是在servlet生命周期中的服务期,根据HTTP请求方法(GETPOST等),将请求分发到doGetdoPost等方法

实现:默认在HttpServlet类中实现。


3. myjsp.jsp 中,关于下面的代码说法错误的是: (  )   

<%@ page language="java"import="java.util.*" errorPage="error.jsp"isErrorPage="false" %> 

 A.该页面可以使用 exception对象

B.该页面发生异常会转向 error.jsp

C.存在 errorPage属性时,isErrorPage是默认为 false

D.error.jsp 页面一定要有isErrorPage属性且值为 true

正确答案: A  

exceptionJSP九大内置对象之一,其实例代表其他页面的异常和错误。只有当页面是错误处理页面时,即isErroePage true时,该对象才可以使用。对于C项,errorPage的实质就是JSP的异常处理机制,发生异常时才会跳转到 errorPage指定的页面,没必要给errorPage再设置一个errorPage。所以当errorPage属性存在时, isErrorPage属性值为false

4.关于JSP生命周期的叙述,下列哪些为真?

正确答案: A C   

JSP会先解释成Servlet源文件,然后编译成Servlet类文件

每当用户端运行JSP时,jsp init()方法都会运行一次

每当用户端运行JSP时,jsp service()方法都会运行一次

每当用户端运行JSP时,jsp destroy()方法都会运行一次

Jsp只会在客户端第一次发请求的时候被编译,之后的请求不会再编译,同时tomcat能自动检测jsp变更与否,变更则再进行编译。

第一次编译并初始化时调用: init() ;销毁调用: destroy()  。在整个jsp生命周期中均只调用一次。  

service()方法是接收请求,返回响应的方法。每次请求都执行一次,该方法被HttpServlet封装为doGetdoPost方法 

5. 下面有关 java 的一些细节问题,描述错误的是?

A.构造方法不需要同步化

B.一个子类不可以覆盖掉父类的同步方法

C.定义在接口中的方法默认是public

D.容器保存的是对象的引用

正确答案: B  

如果父类中的某个方法使用了synchronized关键字,而子类中也覆盖了这个方法,默认情况下子类中的这个方法并不是同步的,必须显示的在子类的这个方法中加上synchronized关键字才可。当然,也可以在子类中调用父类中相应的方法,这样虽然子类中的方法并不是同步的,但子类调用了父类中的同步方法,也就相当子类方法也同步了




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值