精选2020年JAVA程序员笔试面试模拟考试题库300题(含参考答案)

2020年JAVA程序员笔试面试题库300题[含答案]

一、简答题

1.下面对数组的操作代码哪个是正确的?A. char[] a=”hello world”.toCharArray(); B. char c=a[999];

C. Class cc=a.getClass(); D. int len=a.length;

E. a.equals(new Object()); F. char c=a[0]; 答案:DF

2.\下面程序段输出的结果是: StringBuffer buf1; String str = “北京2008”; buf1 = new StringBuffer(str);

System.out.println(buf1.charAt(2)); A. 输出是:京 B. 输出是:2 C. 输出是:0 D. 输出是:null 答案:B

3.下面这些方法中()方法不是Applet的基本方法。A. run() B. init() C. start() D. stop() 答案:A

4.如果你被要求写一段代码读取一个图片文件,那么一般使用哪种Stream?A. ObjectInputStream B. FileInputStream C. FileReader

D. DataInputStream 答案:D

5.如果从流中读取一个大数据量的XML文件并进行解析,最好使用哪种解析器?A. 两种都不可以

B. 两种都可以,没有太大区别 C. SAXParser

D. DOMParser 答案:C

6.如果你设计了一个类,并且覆盖率equals()方法,哪些方法你还会考虑覆盖?A. clone() B. toString() C. wait() D. finalize() E. hashCode() 答案:E

7.\假设test类运行于多线程环境下,那么关于A处的同步下面描述正确的是? public class Test {

List list = new java.util.ArrayList(); public void test() {

synchronized(list) { // --A

list.add( String.valueOf(System.currentTimeMillis())); } } }

A. Test 类为singleton时也没有必要增加synchronized B. Test方法中必须增加synchronized

C. Test类为singleton时有必要增加synchronized D. Test 方法中没有必要增加synchronized 答案:C

8.下列哪个语句关于内存回收的说明是正确的A. 程序员必须创建一个线程来释放内存; B. 内存回收程序负责释放无用内存 C. 内存回收程序允许程序员直接释放内存 D. 内存回收程序可以在指定的时间释放内存对象 答案:B

9.下列对继承的说法,哪个是正确的( )A. 子类只能继承父类public方法和状态 B. 子类能继承父类的protected方法,而不继承protected状态 C. 子类能继承父类的所有非私有方法和状态 D. 子类能继承父类的私有方法和状态 答案:C

10.在Java中进行图像处理的类库在以下()包中。A. java.awt.io B. java.awt.image C. java.applet.Applet D. java.awt.event.*

答案:B

11.面向对象的特征

答案:(抽象、继承、多态、封装)

12.EJB在WEBLOGIC中的部署文件 答案:weblogic-ejb-jar.xml

13.如果配置一个servlet需要使用的参数,最好在哪个方法中A. doPost B. destroy C. doGet D. service E. init 答案:AC

14.将两个表连接在一起时,下面那一项通常是另外一个表的主键A. 外键 B. 总控键 C. 重复的组 D. 主键 答案:A

15.下列哪些情况适合考虑使用有状态会话beanA. 实例化会话bean的时候,必须初始化会话bean的状态

B. 在方法调用期间,会话bean需要维护成员变量的的数据 C. 会话bean提供的服务不具体针对某种客户端

D. 会话bean需要跨越多个方法调用,维护客户端的信息 答案:AD

16.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别 答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用 HttpServletResponse.sendRequest()方法。

17.容器Panel和applet缺省使用的布局编辑策略是 答案:FlowLayout的布局管理器

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4