博客
关于我
Java面试精选30题
阅读量:582 次
发布时间:2019-03-11

本文共 2882 字,大约阅读时间需要 9 分钟。

Java基础题目集合

1. Thread类的方法

问题:下面哪些是Thread类的方法?选项:A. start()

B. run()
C. exit()
D. getPriority()

答案:ABD

解析

  • start():用于启动线程,执行run()方法。
  • run():线程执行的方法,可以被多个线程共享。
  • exit():属于System类的方法,与Thread无关。

2. lang.Exception类的说法

问题:下面关于lang.Exception类的说法正确的是?选项:A. 继承自Throwable

B. Serializable
C. 不记得,反正不正确
D. 不正确

答案:A

解析

  • Exception继承自Throwable,是Java中所有异常的基类。
  • SerializableException的接口之一。
  • CheckedExceptionUncheckedExceptionException的子类。

3. GC线程

问题:GC线程是否为守护线程?答案:是

解析

  • GC线程属于FinalizerReferenceHandler,是守护线程。
  • 守护线程在JVM未退出时一直运行,负责垃圾回收。

4. volatile关键字

问题:volatile关键字是否能保证线程安全?答案:不能

解析

  • volatile保证可见性和一致性,但不能保证线程安全。
  • 线程安全需要synchronized关键字或Thread类的方法。

5. ArrayList扩充

问题ArrayList list = new ArrayList(20);中的list扩充几次?答案:A

解析

  • 默认初始大小为10,新建时设置为20,不需要扩充。

6. 对称加密

问题:下面哪个流类属于面向字符的输入流?选项:A. BufferedReader

B. FileInputStream
C. ObjectInputStream
D. InputStreamReader

答案:D

解析

  • 面向字节的输入流:FileInputStreamBufferedReader
  • 面向字符的输入流:InputStreamReader

7. Thread的start()和run()

问题:下面程序的运行结果是什么?代码

public static void main(String args[]) {    Thread t = new Thread() {        public void run() {            pong();        }    };    t.run();    System.out.print("ping");}static void pong() {    System.out.print("pong");}

答案:B

解析

  • start()启动新线程,run()由线程执行。
  • t.run()不会启动新线程,直接调用run(),输出“ping”后“pong”不会输出。

8. 关系型数据库

问题:下面属于关系型数据库的是?选项:A. A

B. B
C. IMS
D. D

答案:AB

解析

  • IMS数据库包括关系型和层次型两种类型。
  • 关系型数据库:如DB2
  • 层次型数据库:如IMS

9. Thread的优先级

问题:GC线程是否为守护线程?答案:是

解析

  • GC线程是FinalizerReferenceHandler,属于守护线程。
  • 守护线程在JVM未退出时运行。

10. Thread的方法

问题:下面哪些是对称加密?选项:A. DES

B. AES
C. DSA
D. RSA

答案:AB

解析

  • 对称加密:加密和解密使用相同密钥。
  • 非对称加密:使用不同密钥,DSARSA属于非对称。

11. Thread的错误处理

问题:下列程序能正常运行吗?代码

public class NULL {    public static void haha() {        System.out.println("haha");    }    public static void main(String[] args) {        ((NULL)null).haha();    }}

答案:能运行

解析

  • null可以强制转换为任何类,static方法不依赖对象。

12. Thread的异常捕获

问题:下列程序的运行结果是什么?代码

public void getCustomerInfo() {    try {        // 可能抛出IOException或FileNotFoundException    } catch (FileNotFoundException ex) {        System.out.print("FileNotFoundException!");    } catch (IOException ex) {        System.out.print("IOException!");    } catch (Exception ex) {        System.out.print("Exception!");    }}

答案:A

解析

  • IOException继承自Exception,会被catch (IOException ex)捕获。
  • FileNotFoundExceptionIOException的子类,会被捕获。
  • Exception是基类,会被最后一个catch捕获。

13. String类型判断

问题:0.6332的数据类型是?选项:A. float

B. double
C. Float
D. Double

答案:B

解析

  • 默认为double,需写f才是float

14. Java接口修饰符

问题:Java接口的修饰符可以为?选项:A. private

B. protected
C. final
D. abstract

答案:CD

解析

  • 接口只能有publicstaticabstractfinal修饰符。
  • final作为常量或不能继承的方法。

15. 创建对象

问题:不通过构造函数也能创建对象吗?答案:是

解析

  • 使用反射、clone()readObject()等方式。

16. ArrayList长度

问题ArrayList list = new ArrayList(20);中的list扩充几次?答案:A

解析

  • 初始大小为10,新建时设置为20,不需要扩充。

17. Thread的运行顺序

问题:下面程序的运行结果是什么?代码

public static void main(String[] args) {    new HelloB();}

答案:D

解析

  • 静态初始化块先执行,static Astatic B
  • 构造函数依次执行,HelloAHelloB

转载地址:http://hwqvz.baihongyu.com/

你可能感兴趣的文章
Objective-C实现hornerMethod霍纳法算法(附完整源码)
查看>>
Objective-C实现Horn–Schunck光流算法(附完整源码)
查看>>
Objective-C实现Http Post请求(附完整源码)
查看>>
Objective-C实现http下载文件 (附完整源码)
查看>>
Objective-C实现Http协议下载文件(附完整源码)
查看>>
Objective-C实现huffman哈夫曼编码算法(附完整源码)
查看>>
Objective-C实现ID3贪心算法(附完整源码)
查看>>
Objective-C实现IIR 滤波器算法(附完整源码)
查看>>
Objective-C实现IIR数字滤波器(附完整源码)
查看>>
Objective-C实现insertion sort插入排序算法(附完整源码)
查看>>
Objective-C实现integer partition整数分区算法(附完整源码)
查看>>
Objective-C实现integerPartition整数划分算法(附完整源码)
查看>>
Objective-C实现interpolation search插值搜索算法(附完整源码)
查看>>
Objective-C实现Interpolation search插值查找算法(附完整源码)
查看>>
Objective-C实现intersection交集算法(附完整源码)
查看>>
Objective-C实现intro sort内省排序算法(附完整源码)
查看>>
Objective-C实现inverse matrix逆矩阵算法(附完整源码)
查看>>
Objective-C实现inversions倒置算法(附完整源码)
查看>>
Objective-C实现isalpha函数功能(附完整源码)
查看>>
Objective-C实现islower函数功能(附完整源码)
查看>>