Java面试笔记5

---恢复内容开始---

1.JRE和JDK的区别。

2.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?

3.是否可以在static环境中访问非static变量

4.什么是自动拆装箱?

5.Java支持多继承么。

不支持,Java不支持多继承。每个类都只能继承一个类,但是可以实现多个接口。

6.什么是值传递和引用传递?

7.创建线程有几种不同的方式?你喜欢哪一种?为什么?

有三种方式可以用来创建线程:

  • 继承Thread类
  • 实现Runnable接口
  • 应用程序可以使用Executor框架来创建线程池

实现Runnable接口这种方式更受欢迎,因为这不需要继承Thread类。在应用设计中已经继承了别的对象的情况下,这需要多继承(而Java不支持多继承),只能实现接口。同时,线程池也是非常高效的,很容易实现和使用。

8.线程的几种可用状态。

 9.Iterator和ListIterator的区别是什么?

ListIterator范围更广。

10.ArrayList和LinkedList有什么区别?

11.Comparable和Comparator接口是干什么的?列出它们的区别。

12.如何权衡是使用无序的数组还是有序的数组?

有序数组最大的好处在于查找的时间复杂度是O(log n),而无序数组是O(n)。有序数组的缺点是插入操作的时间复杂度是O(n),因为值大的元素需要往后移动来给新元素腾位置。相反,无序数组的插入时间复杂度是常量O(1)。

13.Java集合类框架的最佳实践有哪些?

14.HashSet和TreeSet有什么区别?

15.Java中的两种异常类型是什么?他们有什么区别?

Java中有两种异常:受检查的(checked)异常不受检查的(unchecked)异常。不受检查的异常不需要在方法或者是构造函数上声明,就算方法或者是构造函数的执行可能会抛出这样的异常,并且不受检查的异常可以传播到方法或者是构造函数的外面。相反,受检查的异常必须要用throws语句在方法或者是构造函数上声明

16.什么是Applet?解释一下Applet的生命周期。

java applet是能够被包含在HTML页面中并且能被启用了java的客户端浏览器执行的程序。Applet主要用来创建动态交互的web应用程序。

applet可以经历下面的状态:

  • Init:每次被载入的时候都会被初始化。
  • Start:开始执行applet。
  • Stop:结束执行applet。
  • Destroy:卸载applet之前,做最后的清理工作。

17.弹出式选择菜单(Choice)和列表(List)有什么区别

Choice是以一种紧凑的形式展示的,需要下拉才能看到所有的选项。Choice中一次只能选中一个选项。List同时可以有多个元素可见,支持选中一个或者多个元素。 

18.

原文地址:https://www.cnblogs.com/vicky-upc/p/5830814.html