2022 年 Java 面试问答

已发表: 2021-12-15

Tech Learn 正在分享 2022 年的基础知识和高级 Java 面试问题和答案,这将帮助您在第一次尝试时完成 Java 面试!

另请阅读 – 免费在线学习 Java

前 71 个 Java 面试问题和答案

  1. 为什么Java是平台无关的?

    由于可以在任何操作系统上轻松运行的字节码,Java 也被称为平台无关。

  2. 为什么 Java 不是 100% 面向对象的?

    Java 使用了 8 种原始数据类型,包括 char、Boolean、int、float、byte 和 short,它们不属于对象类别,这就是为什么 java 不是 100% 面向对象的编程语言的原因。

  3. 什么是JVM?

    JVM 代表 Java 虚拟机。 JVM 是一个解释器,它接受并执行“字节码”

  4. 列出 Java 的任何五个特性?

    Java的主要特性包括健壮、面向对象、多线程、平台无关和解释。

  5. 为什么Java被认为是动态的?

    Java 旨在适应不断变化的环境。 它的程序携带大量信息,这些信息对于在运行时解析和验证对象的入口非常有用。

  6. 定义类?

    在 java 中,类由用于定义对象性质的方法和字段组成。 它是负责创建对象的蓝图。

  7. 你对Java了解多少?

    Java 于 1995 年由 Sun Microsystems 发布和开发。它是一种高级和面向对象的编程语言,可以在多种平台上运行,包括 Mac OS、Windows 等。

  8. 定义 Java 架构中立?

    Java Architectural Neutral 是一种编译器,用于生成与架构无关的目标文件格式。 随着 java 运行时系统的存在,其隐蔽的编译代码为可执行形式。

  9. Java支持哪些平台?

    Java 可在 Mac OS、Windows 以及许多版本的 UNIX/Linux 上运行,例如 CentOS、Redhat Linux、Sun Solaris、HP-Unix、Ubuntu 等。

  10. 列出任何 5 个 Java IDE?

    下面列出了 5 个 Java IDE:
    • Netbeans
    • 日食
    • 蓝色J
    • JCreator
    • j编辑

  11. 列出Java的一些关键字:

    Java的一些关键字如下:
    • 抽象的
    • 布尔值
    • 休息
    • 字节
    • 班级
    • 转变
    • 抓住

  12. 为类创建对象的三个步骤是什么?

    如果要为类创建对象,则需要执行以下步骤:
    • 声明对象
    • 实例化
    • 初始化

  13. 用Java写字节数据类型的默认值?

    0 是 Java 编程语言中字节数据类型的默认值。

  14. 用Java写出double和float数据类型的默认值?

    Java 编程语言中 float 数据类型的默认值为 0.0f。
    java编程语言中double数据类型的默认值为0.0d。

  15. Java如何实现高性能?

    为了实现高性能,Java 使用时间编译器将指令转换为字节码。

  16. Java 中的类是什么?

    一个类被称为用户定义的原型和蓝图,通过它形成对象。 它表示对所有对象都相同的一组方法或属性。

  17. 我们什么时候可以使用 parseInt() 方法?

    我们应用 parseInt() 方法来获取特定字符串的原始数据类型。

  18. java.util.regex 包含哪些类?

    java.util.regex 有下面列出的三个类:
    1.模式类
    2. 匹配器类
    3. PatternSyntaxException 类

  19. 什么是例外?

    严格执行程序时发生的问题称为执行。 这些被放置在线程技术中的主管捕获。

  20. 列出 Exception 类下的两个子类:

    异常类由两个主要的子类组成,如下所示:
    • IOException 类
    • RuntimeException 类

  21. 什么是单例类?

    Singleton 类规范对象的创建,将数量限制为 1,但允许在任何条件发生变化时灵活地创建对象。

  22. 定义JDK?

    JDK 的完整形式是 Java Development Kit。 JDK是打包、记录和编译Java程序必不可少的工具。

  23. JRI 是什么意思?

    JRI 是 Java 运行时环境的缩写。 它指的是负责执行 Java 字节码的运行时环境。

  24. 解释JVM

    JVM 的全称是 Java Virtual Machine。 JVM 后面跟着三个符号:Runtime Instance Specification and Implementation

  25. 写出Packages的优点。

    包的优点如下:
    • 帮助避免名称冲突。
    • 提供更简单的代码访问控制
    • 具有仅在包中使用且外部类无法观察到的隐藏类
    • 帮助创建合适的层次结构。

  26. 写下 Java 支持的修饰符类型

    java 基本上支持 4 种类型的访问修饰符:
    • 默认
    • 民众
    • 私人的
    • 受保护

  27. Java中有多少种构造函数?

    有两种类型的构造函数:
    • 默认构造函数
    • 参数化构造函数

  28. 定义默认构造函数

    默认构造函数也称为无参数构造函数,可以默认生成且不参与任何操作。

  29. 定义参数化构造函数

    在 java 中,参数化构造函数是接受参数的构造函数,它们能够使用提供的值初始化实例变量。

  30. 写一些关于数组列表的点

    • 阵列列表不协调。
    • 速度很快
    • 它没有描述增量大小。
    • 数组列表使用迭代器来遍历数组列表。

  31. Java中的向量是什么?

    • 矢量是协调的。
    • Vector 是线程安全的,因此速度很慢。
    • 它默认最大化其数组的大小。
    • 增量大小由向量定义

  32. Java中的对象是什么?

    一个对象具有下面列出的 3 个特征:
    • 状态
    • 行为
    • 身份

  33. Java中如何创建对象?

    我们使用“new”关键字创建一个对象。 例如:
    类名 obj = 新类名();

  34. Java中OOP的主要概念是什么?

    Java中OOP的主要概念是:
    • 继承
    • 封装
    • 抽象
    • 多态性

  35. Java中的final关键字是什么?

    final 是 Java 中的一个特殊关键字,基本上充当非访问修饰符。 我们可以在各种情况下使用这个变量,包括:
    • 最终变量
    • 最终方法
    • 最后一堂课

  36. 构造函数链的实现方式有哪些?

    我们可以通过两种方式实现构造函数链接:
    • 从基类使用 super()
    • 在同一类中使用 this()

  37. Java 中的类加载器是什么?

    用于加载类文件的 Java 虚拟机 (JVM) 的一个子集称为 Java ClassLoader。

  38. Java 提供了多少个内置的类加载器?

    java提供了三个内置的类加载器
    • 扩展类加载器
    • 引导类加载器
    • 系统/应用类加载器

  39. Map接口的写特性

    Map接口的特点是:
    • 地图不包含重复键。
    • 每个键最多可以映射一个值。

  40. Java 在其集合框架中包含什么?

    • 接口
    • 课程
    • 方法

  41. 命名继承执行的类的类型

    • 父类是超类或基类。
    • 作为子类或派生类的子类。

  42. 定义单一继承

    当一个类获得另一个类的特性时,这称为单继承。

  43. 定义多级继承

    在多级继承中,当一个类派生自另一个类并且另一个类也派生自另一个类时。

  44. 分层继承是什么意思?

    层次继承是指一个类有多个子类(子类)

  45. 什么是混合继承?

    两种或多种继承类型的混合称为混合继承

  46. Java中如何实现封装?

    我们可以通过两种简单的方式来实现封装:
    • 将类的变量声明为私有变量。
    • 提供用于更改和查看变量值的getter 方法和公共setter。

  47. servlet 的生命周期是什么?

    下面列出了 servlet 生命周期中的五个阶段:
    • Servlet 被销毁
    • Servlet 已初始化
    • Servlet 已加载
    • 服务请求
    • Servlet 被实例化

  48. 编写servlet中会话管理的常用方法

    • 会话管理 API
    • 饼干
    • 用户认证
    • URL 重写
    • HTML 隐藏字段

  49. 编写 JDBC 驱动程序的类型

    JDBC驱动的类型有:
    • 瘦驱动程序(完全 java 驱动程序)
    • JDBC-ODBC 桥驱动程序
    • Native-API 驱动程序(部分是 java 驱动程序)
    • 网络协议驱动程序(完全 java 驱动程序)

  50. 用java编写连接数据库的步骤?

    java中连接数据库的方法有:
    • 创建语句
    • 执行查询
    • 注册驱动程序类
    • 创建连接
    • 关闭连接

  51. JDBC支持的语句类型有哪些?

    JDBC支持三种语句
    • 陈述
    • 可调用语句
    • PreparedStatement

  52. 编写Spring框架的不同模块

    spring框架的不同模块有:
    • Spring DAO
    • 弹簧 JDBC
    • 弹簧 ORM
    • 弹簧上下文
    • Spring Web 模块
    • 弹簧 AOP
    • 弹簧MVC

  53. 提及基于注解的 Spring 配置中的一些重要注解

    • @Autowired
    • @Resource
    • @PreDestroy
    • @Qualifier
    • @必需的
    • @PostConstruct

  54. 列出 Spring beans 中定义的 5 种 Scopes

    Spring bean 中定义的 5 种 Scope 类型如下:
    • 单身人士:
    • 原型
    • 要求
    • 会议
    • 全球会话

  55. 写一些重要的Spring注解

    重要的 Spring 注释是:
    • @控制器
    • @RequestMapping
    • @ResponseBody
    • @PathVariable
    • @Autowired
    • @Qualifier
    • @服务
    • @范围
    • @配置
    • @ComponentScan
    • @豆角,扁豆

  56. Spring 支持哪些类型的事务管理?

    spring 支持两种类型的事务管理:
    • 程序化事务管理
    • 声明式事务管理

  57. 如何处理 Java 异常?

    通过使用这 5 个关键字,我们可以处理 Java 异常
    • 抓住
    • 最后
    • 尝试
    • 抛出
    • 扔

  58. Java异常类的重要方法有哪些?

    Java Exception Class的重要方法如下:
    • 同步Throwable getCause()
    • 字符串 getMessage()
    • 无效 printStackTrace()
    • 字符串 getLocalizedMessage()
    • 字符串 toString()

  59. Java提供了多少种垃圾?

    Java 提供了 4 种类型的垃圾:
    • CMS 垃圾收集器
    • 串行垃圾收集器
    • 并行垃圾收集器
    • G1 垃圾收集器

  60. 创建线程的两种方法是什么?

    创建线程的两种方法是:
    • 实现Runnable 接口。
    • 扩展线程

  61. Java 中的 OutOfMemoryError 是什么?

    java.lang.Error 的子类,通常在我们的 Java 虚拟机内存不足时发生,在 Java 中称为 OutOfMemoryError。

  62. JVM分配了多少种内存区域?

    • 堆
    • 堆
    • 本机方法堆栈
    • 程序计数器寄存器
    • 类(方法)区

  63. 你能让构造函数最终化吗?

    不,我们不能将构造函数设为 final

  64. java中有哪些方法可以将一个对象的值复制到另一个对象中?

    • 通过使用构造函数
    • 将一个对象的值分配给另一个对象
    • 通过使用 Object 类的 clone() 方法

  65. Java中有多少种继承?

    Java中有五种继承类型:
    • 多重继承
    • 混合继承
    • 单级继承
    • 分层继承
    • 多级继承

  66. 哪个类是所有类的超类?

    所有类的超类是 Object 类。

  67. 写出 super 关键字的主要用途是什么?

    super关键字的主要用途是:
    • 调用直接父类方法。
    • 调用直接父类构造函数。

  68. 我们如何实现方法重载?

    方法重载可以通过两种方式实现:
    • 通过修改参数的数量
    • 通过修改返回类型

  69. 是否可以覆盖私有方法?

    不,因为它仅限于类,所以我们不能覆盖私有方法。

  70. java有虚函数吗?

    是的,所有函数在java中默认都是虚拟的

  71. 什么是类型转换?

    类型转换有两种类型:
    • 隐式
    • 显式

Tech Learn 会根据行业需求不断分享 Java 的基础知识和高级面试问题和答案,因此请继续访问我们以定期更新Java 面试问题

参考链接:

  • https://www.edureka.co/blog/interview-questions/java-interview-questions/
  • https://www.javatpoint.com/corejava-interview-questions

相关帖子

java interview questions and answers for experienced 2021

2022 年 Java 面试问答

阅读更多
devops interview questions and answers 2020

2021 年 20 大 DevOps 面试问题和答案

阅读更多
aws interview questions and answers

适用于 2021 年有经验和应届生的 AWS 面试问题和答案

阅读更多
VMware Interview questions 2020

VMware 2021 年面试问题和答案

阅读更多
PYTHON INTERVIEW QUESTIONS

常见的 Python 面试问题和答案

阅读更多