一、习题介绍
第一章
Check Point:P15 1.30,1.33,1.37,1.42,1.43
二、习题及答案
1.30
What is a comment? Is the comment ignored by the compiler? How do you denote a comment line and a comment paragraph?
1.30 什么是评论?编译器会忽略注释吗?如何表示注释行和注释段?
答:评论是在程序源代码中添加的文本,用来解释代码的作用,但不会被程序执行。编译器通常会忽略注释,因为它们不参与程序的编译和运行过程。
在大多数编程语言中,注释有两种形式:
单行注释:通常以特定符号开始,如在 Java 中使用 // 开头,表示从 // 到行尾的所有内容都是注释。
多行注释:在某些语言中,如 Java,可以使用 /* ... */ 来包围一段文本,表示这是多行注释。这种注释可以跨越多行,直到遇到闭合的 */ 。
1.37
What is the JVM?
1.37 什么是JVM?
答:JVM(Java Virtual Machine,Java 虚拟机)是一个可以执行 Java 字节码的虚拟计算机。它是一个抽象的计算机,能够运行 Java 程序,而不需要关心底层硬件和操作系统的细节。JVM 提供了一个运行时环境,使得 Java 程序能够实现跨平台的特性。
1.42
What are syntax errors (compile errors), runtime errors, and logic errors?
1.42 什么是语法错误(编译错误)、运行时错误和逻辑错误?
答:语法错误(编译错误):发生在代码编写过程中,通常是因为代码不符合编程语言的语法规则。编译器在编译代码时会检测到这些错误,并阻止代码运行,直到它们被修正。
运行时错误:在程序运行时发生的错误,通常是因为程序试图执行非法操作或访问无效资源。例如,访问数组的非法索引或除以零。
逻辑错误:代码在语法上正确,也能够运行,但程序的输出结果不是预期的。这通常是因为程序的逻辑与预期不符,需要通过调试来找出问题所在。
1.43
Give examples of syntax errors, runtime errors, and logic errors.
1.43 给出语法错误、运行时错误和逻辑错误的例子。
答:语法错误的例子:
public class Example {
public static void main(String[] args) {
System.out.prinln("Hello, World!"); // 这里应该是println而不是prinln
}
}
这里的 prinln 是一个拼写错误,正确的应该是 println 。
运行时错误的例子:
public class Example {
public static void main(String[] args) {
int[] array = new int[5];
System.out.println(array[5]); // 试图访问数组的第6个元素,但数组只有5个元素
}
}
这里尝试访问数组的第6个元素,但数组只有5个元素,这将导致 ArrayIndexOutOfBoundsException 。
逻辑错误的例子:
public class Example {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
count++; // 逻辑错误,应该在i为奇数时增加计数
}
}
System.out.println("Count of odd numbers: " + count); // 应该输出5,但逻辑错误导致输出10
}
}
这里的逻辑错误在于 for 循环的条件判断,它错误地计算了偶数的数量,而不是奇数的数量。
结语
锲而舍之,朽木不折
锲而不舍,金石可镂
!!!