请列出5个现代Java编程语言的关键特性。
1. 对象导向编程：Java是一种面向对象的编程语言，强调用对象来组织和管理代码。

2. 跨平台：Java应用程序可以在任何具有Java虚拟机（JVM）的计算机上运行，因为Java程序在编译时会被转换成字节码。

3. 自动垃圾回收：Java的垃圾回收机制可以自动识别和清除不再使用的对象和变量，减少内存泄漏和内存溢出。

4. 异常处理：Java提供了抛出和捕获异常的机制，可以在运行时捕获和处理错误和异常情况，提高代码的健壮性。

5. 多线程支持：Java具有内置线程支持，可以轻松创建、管理和同步多个线程，以实现更高效的并发编程。