Java编译日志面试题及详细答案(实战向).docxVIP

  • 2
  • 0
  • 约3.98千字
  • 约 6页
  • 2026-06-08 发布于河北
  • 举报

Java编译日志面试题及详细答案(实战向).docx

Java编译日志面试题及详细答案(实战向)

说明:所有题目均为一线Java面试高频真题,摒弃套话,以实战排查思路、底层原理、真实报错场景解答,适合后端开发面试、应届生、初级开发进阶复习。

一、基础认知类(入门必问)

1、Java编译阶段和运行阶段的日志/报错有什么本质区别?

参考答案:

很多新人会把编译报错和运行报错混为一谈,实际两者触发阶段、原因、排查方式完全不同:

1)编译阶段(javac阶段)

是代码还没运行,编译器对源码做语法校验、类型检查、泛型校验、权限校验时抛出的错误。只要有编译错误,class文件就生成失败,程序完全无法启动。

常见特征:提示error:找不到符号、语法错误、类型不匹配、权限不足。

2)运行阶段(jvm执行class阶段)

代码编译通过,class文件生成成功,程序启动或执行逻辑时出错。属于运行时异常/错误,程序可能局部报错、宕机、卡死,不会整体编译失败。

常见特征:空指针、数组越界、类找不到、方法未定义、数据库连接超时等。

面试加分点:编译错误都是语法、静态规则问题,运行错误都是逻辑、环境、数据、资源问题。

2、使用javac编译Java文件时,报“编码GBK的不可映射字符”,是什么原因?怎么解决?

参考答案:

报错原因:本地系统默认编码是GBK,而Java源码文件是UTF-8编码,文件里的中文、特殊符号无

文档评论(0)

1亿VIP精品文档

相关文档