Java笔试题

这是一份Java笔试题汇总,涵盖了Java虚拟机、数据库、操作系统、网络、编程语言等多个方面的知识,包括选择题和编程题,适合Java程序员的面试准备。
摘要由CSDN通过智能技术生成

1. 在Java中,负责对字节代码解释执行的是    

A. 应用服务器

B. 虚拟机

C. 垃圾回收器

D. 编译器

 

2.一个栈的输入序列为1 2 3 4 5,则下列序列中不可能是栈得输出序列的是( )   

A. 5 4 1 3 2

B. 2 3 4 1 5

C. 1 5 4 3 2

D. 2 3 1 4 5

3. LDAP是什么?   

A. 是一种开源产品

B. 是一种编程语言

C. 是一种访问协议

D. 是一种存储数据的目录

4. 要想在你的视图上成功的执行查询需要做什么?   

A. 只能在基础表中有select权限

B. 在视图中需要有select权限

C. 基础表中必须有数据

D. 基础表必须在同一个 用户模式中

5. 评估下面的一组SQL语句:

CREATE TABLE dept

(deptno NUMBER(2),

dname VARCNAR2(14),

1oc VARCNAR2 (13));

ROLLBACK;

DESCRIBE DEPT

下面关于该组语句的哪个描述是正确的?   

A. DESCRIBE DEPT语句将返回一个错误ORA-04043: object DEPT does not exist.

B. DESCRIBE DEPT语句将显示DEPT表的结构描述内容

C. DESCRIBE DEPT语句将只有在ROLLBACK之前引入一个COMMIT语句时,才会显示DEPT表的结构描述内容

D. ROLLBACK语句将释放DEPT占用的存储空间

6. Oracle中VARCHAR2类型的最大长度是:    

A. 4000

B. 3000

C. 1000

D. 2000

7. 下列哪一个选项按照顺序包括了OSI模型的七个层次:( )    

A. 物理层 数据链路层 传输层 网络层 会话层 表示层 应用层

B. 物理层 数据链路层 会话层 网络层 传输层 表示层 应用层

C. 物理层数据链路层网络层传输层会话层表示层应用层

D. 网络层 传输层 物理层 数据链路层 会话层 表示层 应用层

8. 当客户端关闭一个从连接池中获取的连接, 会发生下面哪一种情况?    

A. 连接不会关闭,只是简单地还给连接池

B. 连接被关闭,但又被重新打开并还给连接池

C. 连接永久性关闭

9. 以下哪些不是javascript的全局函数()   

A. eval

B. escape

C. setTimeout

D. parseFloat

10. 你使用mkdir命令创建一个临时文件夹/tmp/aaa,并将一些文件复制其中。你使用完后要删除/mnt/tmp文件夹及其中的所有文件,应该使用命令   

A. rm /tmp/aaa

B. rm -r /tmp/aaa

C. rmdir -r /tmp/aaa

D. rmdir /tmp/aaa

11. 操作系统具有进程管理、存储管理、文件管理和设备管理的功能,在以下有关的描述中,哪一个是不正确的    

A. 设备管理是指计算机系统中除了CPU和内存以外的所有输入、输出设备的管理

B. 存储管理主要是管理内存资源

C. 进程管理主要是对程序进行管理

D. 文件管理可以有效地支持对文件的操作,解决文件共享、保密和保护问题

12. 在UML提供的图中,(  )用于按时间顺序描述对象间的交互。   

A. 协作图

B. 网络图

C. 序列图

D. 状态图

13. 下面有关系统并发访问数估算数据那个最有效:   

A. 高峰时段日处理业务量100000

B. 高峰时段平均每秒请求数80

C. 同时在线用户数100

D. 平均每秒用户请求数50

14. 不同级别的用户对同一对象拥有不同的访问权利或某个客户端不能直接操作到某个对象,但又必须和那个对象有所互动,这种情况最好使用什么设计模式。    

A. Bridge模式

B. Fa?ade模式

C. Adapter模式

D. Proxy模式

15. PL/SQL中用来判断FETCH语句是否成功,并且在FETCH语句失败时返回逻辑真的属性是:    

%ISOPEN

%NOTFOUND

%ROWCOUNT

%FOUND

16. 关于以下程序代码的说明正确的是:

1.   public class HasStatic{

2.     private static int x=100;

3.     public static void main(String args[]){

4.          HasStatic hs1=new HasStatic();

5.          hs1.x++;

6.          HasStatic  hs2=new HasStatic();

7.          hs2.x++;

8.          hs1=new HasStatic();

9.          hs1.x++;

10.        HasStatic.x--;

11.        System.out.println("x="+x);

12.     }

13.   }   

A. 程序通过编译,输出结果为:x=103

B. 10行不能通过编译,因为x是私有静态变量

C. 5行不能通过编译,因为引用了私有静态变量

D. 程序通过编译,输出结果为:x=102

17. 定义字符串:String s1="hello";对下面程序描述正确的是:

if(s1=="hello"){

  System.out.println("s1 = \"hello\"");

}else{

 System.out.println("s1 !=hello");

}   

A. 输出 s1 !=hello

B. 编译正确,运行错误

C. 产生编译错误

D. 输出 s1="hello"

18. 在实现DAO设计模式时,下面哪种模式经常被采用:    

A. Proxy模式

B. Factory模式

C. Prototype模式

D. Observer模式

19. 关于MVC,下面说法正确的是:   

A. Servlet实现MVC的Model部分

B. EJB实现MVC的Model部分

C. Http实现MVC的View部分

D. JSP实现MVC的Control部分

20. 下列关于PC机软件的叙述中,错误的是:   

A. C++语言编译器是一种系统软件,它需要操作系统的支持

B. PC机除了使用Windows操作系统外,还可使用Linux等操作系统

C. 软件是计算机系统不可缺少的组成部分,它包括各种程序、数据和有关文档资料

D. Windows操作系统中的画图、计算器、游戏等是Windows的组成部分,它们都属于系统软件

21. 在ORACLE中执行下面SQL的结果为:

Select instr('Mississippi','i',3,3) from dual   

7

10

8

11

22. 在ORACLE中,下面哪个符号可以放到一个文件中的一行前面来标示注释。   

A. !

B. $

C. &

D. #

23. 以下代码段将创建几个对象?

String s1="bc";

String s2="bc";   

A. 2

B. 3

C. 0

D. 1

24. 关于垃圾收集的哪些叙述是对的。    

A. 垃圾收集能够在期望的时间释放被java对象使用的内存。

B. 垃圾收集将检查并释放不再使用的内存。

C. 垃圾收集允许程序开发者明确指定并立即释放该内存。

D. 程序开发者必须自己创建一个线程进行内存释放的工作。

25. 设x为int型变量,则执行以下语句段后,x的值为:

x=10;

x+=x-=x-x;   

A. 30

B. 20

C. 40

D. 10

26. 对于下面几种常见的CMT事务属性,下面?号处从?1 到 ?4依次应为:   

A. T2, None, None, T2

B. None, T2, None, T2

C. T1, T2, T2, None

D. None, None, None, T1

E. T2, T2, None, T2

F. T1, None, T2, T2

27. 如果配置一个Servlet需要使用的参数,最好在哪个方法中加载?    

A. init

B. doGet

C. destory

D. doPost

E. service

28. 下面哪个Set是排序的?   

A. LinkedHashSet

B. HashSet

C. AbstractSet

D. TreeSet

HashSet set1 = new HashSet(Arrays.asList("b c e f g a".split(" ")));  
        LinkedHashSet set2 = new LinkedHashSet(Arrays.asList("b c e f g a".split(" ")));  
        SortedSet set3 = new TreeSet(Arrays.asList("b c e f g a".split(" ")));  
        System.out.println(set1);  
        System.out.println(set2);  
        System.out.println(set3);  
输出结果:
    [f, g, e, b, c, a]
    [b, c, e, f, g, a]
    [a, b, c, e, f, g]
29. 假设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方法中必须增加synchronized

B. Test类为singleton时有必要增加synchronized

C. test方法中没有必要增加synchronized

D. Test类为singleton时也没有必要增加synchronized

30. 下面哪个对类的声明是错误的?   

A. class MyClass extends MySuperClass1, MySupperClass2 {}

B. public class MyClass{}        

C. abstract class MyClass implements YourInterface1, Youriterface2 {}

D. private class MyClass {}

E. class MyClass extends MySuperClass implements YourInterface {}

1. Applet可以做下列那些操作   

A. 读取客户端文件 

B. 在客户端主机上创建新文件 

C. 在客户端装载程序库

D. 读取客户端部分系统变量

 2. 在面向对象数据模型中,子类不但可以从其超类中继承所有的属性和方法,而且还可以定义自己的属性和方法,这有利于实现    

A. 可移植性

B. 可扩充性

C. 可靠性

D. 安全性

 3. 下面两段代码打印的结果是:

System.out.println(5.00-4.90);

System.out.println(300-210);   

A. 0.8999999999999999和90

B. 0.8999999999999999和89.99999999999999

C. 0.9和90

D. 0.9和89.99999999999999

 4. 下面关于数据库系统基于日志的恢复的叙述中,哪一个是正确的    

A. 利用更新日志记录中的改前值可以进行UNDO,利用更新日志记录中的改前值可以进行REDO

B. 利用更新日志记录中的改后值可以进行UNDO,利用更新日志记录中的改后值可以进行REDO

C. 利用更新日志记录中的改前值可以进行UNDO,利用更新日志记录中的改后值可以进行REDO

D. 利用更新日志记录中的改后值可以进行UNDO,利用更新日志记录中的改前值可以进行REDO

 6. 下面哪个语句用于打开一个已经存在的约束?   

A. ALTER TABLE table_name ENABLE constraint_name;

B. ALTER TABLE table_name STATUS = ENABLE CONSTRAINT constraint _ name;

C. ALTER TABLE table_name STATUS = ENABLE CONSTRAINT constraint _ name;

D. ALTER TABLE table_name ENABLE CONSTRAINT constraint _ name;

E. ALTER TABLE table_name TURN ON CONSTRAINT constraint _ name;

F. ALTER TABLE table_name TURN ON CONSTRAINT constraint _ name;

 7. TCP协议在每次建立或拆除连接时,都要在收发双方之间交换_________ 报文。    

A. 一个

B. 四个

C. 三个

D. 两个

 8. 网络操作系统和分布式操作系统的主要区别是()    

A. 是否连接多台计算机

B. 计算机之间能否通信

C. 网上资源能否共享

D. 各台计算机有没有主次之分

 9. 关于IE的window对象表述不正确的有()   

A. window.opener属性本身就是指向window对象

B. window.location=”a.html”和window.location.href=”a.html”的作用都是把当前页面替换成a.html页面

C. 定义了全局变量g;可以用window.g的方式来存取该变量

D. window.reload()方法可以用来刷新当前页面

 10. 在操作系统中,Wait(s)和Signal(s)操作是一种    

A. 机器指令

B. 作业控制命令

C. 系统调用命令

D. 低级进程通信原语

 11. 文件的存取方式是由文件的性质和用户使用文件的情况而确定的,一般有两种存取方式,它们是   

A. 直接存取和间接存取

B. 顺序存取和链接存取

C. 顺序存取和随机存取

D. 只读存取和读写存取

 12. 下列描述中正确的是()    

A. 软件工程只是解决软件项目的管理问题

B. 软件工程只是解决软件开发中的技术问题。

C. 软件工程的主要思想是强调在软件开发过程中需要应用工程化的原则。

D. 软件工程主要解决软件产品的生产率问题。

 13. 项目中的技术风险是通常是通过()方法来缓解的   

A. 技术文档

B. 架构原型验证

C. 代码复审

D. 单元测试

 14. CMM定义了几个不同的成熟度等级。   

A. 3

B. 6

C. 5

D. 4

 15. PL/SQL中以下表达式的结果非空的是:   

A. NULL||NULL

B. NULL'||NULL

C. (5>NULL)

D. 3+NULL

 16. 你怎样强制对一个对象立即进行垃圾收集?   

A. 调用 System.gc()

B. 调用System.gc(), 同时传递要进行垃圾收集对象的引用

C. 调用 Runtime.gc()

D. 给这个对象的所有引用设置一个新的值(例如null)

E. 垃圾收集是不能被强迫立即执行

 17. 以下( )方法不能被浏览器自动调用。    

A. init()

B. stop()

C. start()

D. paint()

 18. 要创建一个新目录,可以用下面(  )类实现。   

A. FileInputStream

B. FileOutputStream

C. RandomAccessFile

D. File

 19. 执行下面代码,下面描述正确的是:

public class Person{

   static int arr[] = new int[10];

   public static void main(String a[]){

     System.out.println(arr[1]);

   }

}   

A. 产生编译错误

B. 输出空

C. 编译正确,运行错误

D. 输出0

 20. 关于CMM说法错误的是:   

A. CMM是一个软件生命周期模型

B. CMM是一种软件过程的策略,与实际使用的模型无关

C. CMM有助于组织建立一个有规律的、成熟的软件过程

D. CMM定义了5个成熟度等级

 21. 执行下面PL/SQL,emp表中存在编号为1234的雇员,说法正确的是:

declare

  v_name VARCHAR2(10);

begin

  SELECT ename INTO v_name FROM emp WHERE empno='1234';

  dbms_output.put_line('found');

  EXCEPTION

    WHEN no_data_found THEN

         dbms_output.put_line('not found!');

    dbms_output.put_line('others');    

end;   

A. 程序编译错误

B. 输出结果为:found

C. 输出结果为: not found others

D. 输出结果为: found others

 22. 在ORACLE中,关于同义词说法错误的是:    

A. 同义词只能由创建同义词的用户使用

B. 同义词可以和表重名

C. 共有同义词和私有同义词创建的权限不同

D. 可以为存储过程创建同义词

 23. 在ORACLE中Date日期类型,存贮日期和时间信息,占用几个字节    

A. 6

B. 10

C. 8

D. 7

 24. 有关线程的哪些叙述是对的。   

A. 一旦一个线程被创建,它就立即开始运行。

B. 当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。

C. 一个线程可能因为不同的原因停止(cease)并进入就绪状态。

D. 使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行。

 25. 下列程序段执行后,t5的结果是:

int t1=5,t2=6,t3=7,t4,t5;

t4=t1<t2?t1:t2;

t5=t4<t3?t4:t3;   

A. 7

B. 5

C. 6

 27. 54. 执行如下两个查询,结果为:

SELECT ename name, sal salary FROM emp order by salary;

SELECT ename name, sal "SALARY" FROM emp order by sal ASC;   

A. 两个查询结果完全相同

B. 第二个查询正确,第一个查询错误

C. 第一个查询正确,第二个查询错误

D. 两个查询结果不同

 28. EJB实例通过下面哪个接口与容器进行交互?   

A. Handle

B. EJBContext

C. EJBHome

D. EJBObject

E. HomeHandle

 29. 下面哪个Map是排序的?   

A. TreeMap

B. HashMap

C. Hashtable

D. WeakHashMap

E. LinkedHashMap

 30. transient 变量和下面哪一项有关?   

A. Cloneable

B. Serializable

C. Runnable

D. Throwable

E. Comparable

 31. 执行下列语句后,i 和n的值为( )int i=10;int n= i++%5;    

A. 10,0

B. 11,0

C. 10,1

D. 11,1

 32. 随着Java技术的不断发展,Sun公司根据市场进一步将Java细分,其中针对普通PC应用的是( )    

A. J2EE

B. JDK

C. J2ME

D. J2SE

1. 以下创建了几个对象

String A,B,C

A="a";

B="b":

A=A+B;

StringBuffer D=new StringBuffer("abc");

D=D.append("567");

A. 6

B. 4

C. 3

D. 5

 2. J2EE的三层结构包括表示层、中间层、()。

A. 保存层

B. 服务层

C. 中间层

D. 数据层

 3. 下面那种服务不是JNDI应用范围。

A. JMS

B. JDBC

C. Servlet

D. EJB

  5. 在数据库中,产生数据不一致的根本原因是

A. 数据冗余

B. 数据存储量太大

C. 没有严格保护数据

D. 未对数据进行完整性控制

 9. 下列关于描述XML和HTML的差异不正确的是

A. XML的语法比HTML严格

B. XML扩展性比HTML强

C. 解析XML的性能优于HTML

D. XML与HTML互补

 10. 文件系统与()密切相关,它们共同为用户使用文件提供方便

A. 作业管理

B. 存储管理

C. 设备管理

D. 处理器管理

 11. 以下哪一项不是进程和程序的区别?

A. 程序可以长期保存,进程是暂时的

B. 程序只能在前台运行,而进程可以在前台或后台运行

C. 程序没有状态,而进程是有状态的

D. 程序是一组有序的静态指令。进程是一次程序的执行过程

 12. 在UML提供的图中,(  )用于按时间顺序描述对象间的交互。

A. 序列图

B. 状态图

C. 协作图

D. 网络图

 13.黑盒测试也称为功能测试。黑盒测试不能发现

A. 界面是否有错误

B. 终止性错误

C. 输入是否正确接收

D. 是否存在冗余代码

 15. 下面哪项不是web容器的部署描述符的作用。

A. 映射到Servlet/JSP的请求

B. 定义欢迎和错误页面

C. 定义MIME参数

D. 定义远程接口

E. 初始化参数

F. 安全授权和认证

 16. 表的主键特点中,说法错误的是:

A. 主键的每一列都必须非空

B. 主键的每一列都必须唯一

C. 一个表只能定义一个住键

D. 主键可以定义在表级或列级

 17. Oracle中可变长度的字符串类型用以下的哪个关键字表示:

A. NUMBER

B. VARCHAR2

C. CHAR

D. BOOLEAN

 18. 以下代码完成画线功能,所画线的颜色是:

g.setColor(Color.red.green.yello.cyan);

g.drawLine(0,0,100,100);

A. yello

B. red

C. cyan

D. green

 19. 创建一个标识有“关闭”按钮的语句是:

A. Button b=new Button("关闭");

B. TextField b=new TextField("关闭");

C. Checkbox b=new Checkbox("关闭");

D. Label b=new Label("关闭");

 20. 为了提高测试的效率,应该:

A. 在完成编码以后制定软件的测试计划

B. 集中对付那些错误群集的程序

C. 随机选取测试数据

D. 取一切可能的输入数据作为测试数据

 21. 软件生命周期中所花费用最多的阶段是:

A. 软件维护

B. 软件测试

C. 详细设计

D. 软件编码

 22. 在ORACLE中,删除emp表的全部数据,但不提交,以下正确的语句是:

A. TRUNCATE TABLE EMP

B. DELETE TABLE EMP

C. DELETE FROM EMP

D. DELETE * FROM EMP

 23. 在ORACLE中,下面哪个符号可以放到一个文件中的一行前面来标示注释。

A. !

B. &

C. $

D. #

 24. 下面这些方法中()方法不是Applet的基本方法。

A. stop()

B. run()

C. init()

D. start()

 25. 类Teacher和Student是类Person的子类:

Person p;

Teacher t;

Student s;

//p,t and s are all non-null.

if(t instanceof Person)  {s=(Student)t;}

最后一句语句的结果是:

A. 编译时正确,但运行时错误

B. 将构造一个Student对象

C. 表达式是错误的

D. 表达式是合法的

 26. 软件设计中划分模块的一个准则是

A. 低内聚高耦合

B. 低内聚低耦合

C. 高内聚低耦合

D. 高内聚高耦合

 27. 下面哪个Set是排序的?  TreeSe

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值