Java面试通关宝典

1、说说Java中异常的分类:

答:可分为Error和Exception。

从概念角度分析:

Error:是程序无法处理的系统错误,编译器不做检查;

Exception:是程序可以处理的异常,捕获后可能恢复;

从责任角度分析:

Error:属于JVM需要承担的责任;

Exception:有RuntimeException(非受检异常)是程序应该承担的责任;CheckedException(受检异常)可检查异常时Java编译器应该承担的责任

常见的Error和Exception

Error:由Error结尾的异常,例如:NoClassDefFoundError、StackOverflowError、OutOfMemoyError等

Exception:有Exception结尾的异常,例如:NullPropagation、IndexOutOfBoundsException等

2、dubbo一般使用什么注册中心?还有别的选择吗?

答:zookeeper,还可以用redis,数据库,consul,nacos

3、怎么给List排序?

答:①使用Collections.sort 默认正序,可以传第二个参数自定义排序;

②实体类实现Comparable接口;

③实现Comparator接口自定义比较器;

4、常用的Map集合有哪些?

答:HashMap、HashTable、TreeMap、LinkedHashMap、ConcurrentHashMap

5、为什么说spring是一个容器?

答:spring的核心理念就是更方便地管理Java Bean,而被管理的Java Bean缓存在一个Map中,这个Map就可以理解为用来装Java Bean的容器,即IOC容器。

6、说说Java虚拟机的生命周期及体系结构。

答:

生命周期:

  一个运行时的Java虚拟机负责运行一个Java程序。当启动一个Java程序时,一个虚拟机实例也就诞生了。当程序关闭退出,这个虚拟机实例也就随之消亡。如果一台计算机同时运行多个Java程序,同时也将产生多个Java虚拟机实例。每个Java程序都运行于它自己的Java虚拟机实例中。

体系结构(如图):

posted @ 2019-06-30 12:44  胡金水  阅读(634)  评论(0编辑  收藏  举报