Java大数据面试复习30天冲刺 - 日积月累,每日五题Day03——JavaSE

Posted Maynor学长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java大数据面试复习30天冲刺 - 日积月累,每日五题Day03——JavaSE相关的知识,希望对你有一定的参考价值。

JDK JRE JVM 的区别

JDK(Java Development Kit)是整个 Java 的核心,是 java 开发工具包,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库。
JRE(Java Runtime Environment)是运行 JAVA 程序所必须的环境的集合,包含 java 虚拟机和 java 程序的一些核心类库。
JVM 是 Java Virtual Machine(Java 虚拟机)的缩写,是整个 java 实现跨平台的最核心的部分,能够运行以 Java 语言写作的软件程序。

String 常用的方法有哪些?

indexOf():返回指定字符的索引。
charAt():返回指定索引处的字符。
replace():字符串替换。
trim():去除字符串两端空白。
split():分割字符串,返回一个分割后的字符串数组。
getBytes():返回字符串的 byte 类型数组。
length():返回字符串长度。
toLowerCase():将字符串转成小写字母。
toUpperCase():将字符串转成大写字符。
substring():截取字符串。
equals():字符串比较。

ArrayList和LinkedList有什么区别?

1, ArrayList的底层是动态数组;LinkedList的底层是双向链表
2, ArrayList默认初始大小为10,默认扩容大小为1.5倍;LinkedList将元素添加到链表的末尾,无须扩容
3, ArrayList查询快, 增删慢, LinkedList增删除快, 查询慢

HashMap和HashTable的区别

1、HashMap 是非线程安全的,HashTable 是线程安全的。
2、HashMap 的键和值都允许有 null 值存在,而 HashTable 则不行。
3、因为线程安全的问题,HashMap 效率比 HashTable 的要高。
4、Hashtable 是同步的,而 HashMap 不是。因此,HashMap 更适合于单线 程环境,而 Hashtable 适合于多线程环境。一般现在不建议用 HashTable, ① 是 HashTable 是遗留类,内部实现很多没优化和冗余。
②即使在多线程环境下, 现在也有同步的 ConcurrentHashMap 替代,没有必要因为是多线程而用 HashTable。

内存泄露和内存溢出的比较

1、内存泄漏memory leak :是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。
2、内存溢出 out of memory :指程序申请内存时,没有足够的内存供申请者使用,或者说,给了你一块存储int类型数据的存储空间,但是你却存储long类型的数据,那么结果就是内存不够用,此时就会报错OOM,即所谓的内存溢出。

以上是关于Java大数据面试复习30天冲刺 - 日积月累,每日五题Day03——JavaSE的主要内容,如果未能解决你的问题,请参考以下文章

Java大数据面试复习30天冲刺 - 日积月累,每日五题Day04——JavaSE

Java大数据面试复习30天冲刺 - 日积月累,每日五题Day02——JavaSE

大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day21——Spark8

大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day29——数据倾斜2

大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day23——Spark10

大数据开发岗面试复习30天冲刺 - 日积月累,每日五题Day24——Spark11