Java中会遇见的面试题有哪些

介绍

这篇文章给大家分享的是有关Java中会遇见的面试题有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Java基本数据类型有哪些

Java的基本数据类型分为:1,整数类型,用来表示整数的数据类型。2,浮点类型,用来表示小数的数据类型。3,字符类型,字符类型的关键字是“字符”。4,布尔类型,是表示逻辑值的基本数据类型。

在准备面试的一段时间,我们需要对基本的理论知识做一个复习,尤其是一些反复会问到的知识点。相信在有所准备之后,大家在面试时也能增添不少的信心。

<强>一、专业技能模块

1。集合

经常用到哪些地图

这几种地图的区别

2。多线程,锁

线程池使用的是哪种

线程池参数怎么配置

3。网络

HTTPS是怎么加密的

普通哈希和一致性散列原理

4。春天,Mybatis

Mybatis中#和美元的区别

怎么防止SQL注入

5。MySQL

MySQL索引的数据结构

为什么使用B +树,与其他索引相比有什么优点

6. jvm运行时数据区

服务器使用的什么垃圾收集器

7。分布式

帽理论

基础理论

<强>二、高频试题

1. HashMap和哈希表各有什么特点,它们有什么区别?(必背题,超级重要)

(1) HashMap和哈希表都实现了地图接口,但决定用哪一个之前先要弄清楚它们之间的分别。主要的区别有:线程安全性,同步(同步),以及速度。

(2) HashMap几乎可以等价于Hashtable,除了HashMap是非同步的,并可以接受零(HashMap可以接受为零的键值(键)和值(值),而散列表则不行)。

(3) HashMap是非同步,而散列表是同步的,这意味着散列表是线程安全的,多个线程可以共享一个Hashtable;而如果没有正确的同步的话,多个线程是不能共享HashMap的. Java 5提供了ConcurrentHashMap,它是Hashtable的替代,比Hashtable的扩展性更好。

(4)另一个区别是HashMap的迭代器(迭代器)是快速失败迭代器,而Hashtable的枚举器迭代器不是快速失败的,所以当有其它线程改变了HashMap的结构(增加或者移除元素),将会抛出ConcurrentModificationException,但迭代器本身的删除()方法移除元素则不会抛出ConcurrentModificationException异常。但这并不是一个一定发生的行为,要看JVM。这条同样也是枚举和迭代器的区别。

由于哈希表是线程安全的也是同步的,所以在单线程环境下它比HashMap要慢。如果你不需要同步,只需要单一线程,那么使用HashMap性能要好过Hashtable。

(5) HashMap不能保证随着时间的推移中地图的元素次序是不变的。

2. Java集合类框架的基本接口

Java集合类提供了一套设计良好的支持对一组对象进行操作的接口和类. Java集合类里面最基本的接口有:

?收藏:代表一组对象,每一个对象都是它的子元素。

?集:不包含重复元素的集合。

?列表:有顺序的收集,并且可以包含重复元素。

?地图:可以把键(关键)映射到值(值)的对象,键不能重复

感谢各位的阅读!关于“Java中会遇见的面试题有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

Java中会遇见的面试题有哪些