java基础综合题1

本文是一份Java基础面试题集,涵盖了选择题、填空题和问题题,包括异常处理、线程安全、集合框架、网络编程、IO流等方面的知识。题目涉及了异常类型、线程同步、数据结构与集合的特性、网络通信接口等内容,适合Java初学者和面试准备者复习巩固。
摘要由CSDN通过智能技术生成

一、选择题

1、给定如下所示的java代码,则运行时,会产生()类型的异常。

String s = null; 
s.equals(“abc”);

A) ArithmeticException
B) NullPointerExecption
C) IOException
D) ClassNotFoundException

答案:B
//如果String s = “”; s.equals(“abc”);是不会报错的,如果String s = null;
s.equals(“abc”);会抛出一个NullPointerException

2、给定如下java程序的代码片段,下划线处,加入( )语句,可以使这段代码编译通过

public void  method1() throws  IOException{
   }
public   void   method2()________{
    method1() }; 

选择二项
A) throws IOException
B) throw IOException
C) throws Exception
D) throws RuntimeException

答案:AC

3、下面异常处理语句结构一定不正确的是( )
A) try{} catch(……){} finally{}
B) try{} catch(……){}
C) try{} finally{}
D)catch(……){} finally{}

答案:D

4、创建一个TCP服务程序的顺序是()
A 关闭socket
B 创建一个服务器socket
C关闭I/O流
D 在服务线程中,从socket中获得I/O流
E 对I/O流进行读写操作,完成与客户的交互
G从服务器socket接受客户连接请求

答案:BGDECA

5、下面都属于线程安全的类是( )
A.ArrayList
B.Vector
C.HashMap
D.Hashtable

答案:BD
Vector是个老的动态数组,是线程同步(安全)且效率低,现在已经不适合使用。
ArrayList实现的是动态数组,它的功能范畴同Vector但不同步(不安全),它只是array的实现方式,允许随机的读取元素,特点是元素增删慢,查找快。
LinkList实现的是链表结构,它允许随机访问,由这个类定义的链表能通栈和队列一样被使用。提供最佳顺序存取,适合插入和移除元素,特点是元素增删快,查找慢。

HashMap不是线程安全的,不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许
HashTable是线程安全的
HashMap是Hashtable的轻量级实现

6.线程通过( )方法可以休眠一段时间,然后恢复运行。
A.run
B.setPrority
C.yield
D.sleep

答案:D

7、在java中,下列选项可以存储无序,不重复的数据是 ( )
A ArrayList
B LinkedList
C HashMap
D Set

答案:D

8、编译运行以下java代码,输出结果正确的是 ( )

public class Test{
   
   LinkedList list = new LinkedList();
   list.add(“aaa”);
   list.removeFrist(); 
   list.removeLast();
   System.out.println(list.size());
}

A) 1
B) 0
C) 运行异常
D) 编译异常

答案:C
removeFrist()把第一个元素去掉,list中已经没有元素了,removeLast()就会报错
Exception in thread “main” java.util.NoSuchElementException
at java.util.LinkedList.removeLast(Unknown Source)
at Test20170424.Test.main(Test.java:10)

9、请选择正确答案

import java.util.*;
public class TestListSet{
   
  public static void main(String args[]){
   
    List list = new ArrayList();
    list.add(“Hello”);
    list.add(“Learn”);
    list.add(“Hello”);
    list.add(“Welcome”);
    Set set =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值