1.10 练习
每章末尾都有练习,只需要利用在该章学到的知识就能完成。强烈建议你尝试完成每个练习,光阅读是学不会编程的,得实践才行。
要想编译并运行 Java 程序,需要下载并安装一些工具。这样的工具很多,但我们推荐 DrJava——一个非常适合初学者使用的“集成开发环境”。有关如何安装 DrJava,请参阅附录 A 的 A.1 节。
本章的示例代码位于仓库 ThinkJavaCode 的目录 ch01 中,有关如何下载这个仓库,请参阅前言中的“使用示例代码”一节。做以下的练习前,建议你先编译并运行本章的示例。
练习1-1
计算机科学家有个毛病,喜欢赋予常见的英语单词以新的义项。例如,在英语中 statement 和 comment 是同义词,但在程序中它们的含义不同。
(1) 在计算机行话中,语句和注释有何不同?
(2) 说程序是可移植的是什么意思?
(3) 在普通英语中,单词 compile 是什么意思?
(4) 何为可执行程序(executable)?为何这个单词被用作名词?
每章末尾的术语表旨在突出计算机科学中有特殊含义的单词和短语。看到熟悉的单词时,千万不要理所应当地认为你知道它们的含义!
练习1-2
接着往下读之前,请先搞清楚如何编译和运行 Java 程序。有些编程环境提供了类似于本章 Hello World 程序的示例程序。
(1) 输入 Hello World 程序的代码,再编辑并运行它。
(2) 添加一条打印语句,在“Hello, World!”后面再显示一条诙谐的消息,如“How are you?”,然后再编译并运行这个程序。
(3) 在这个程序中添加一条注释(什么地方都可以),再编译并运行它。新添的注释应该对结果没有任何影响。
这个练习看似微不足道,却为编写程序打下了坚实的基础。要想得心应手地调试程序,必须熟悉编程环境。
在一些编程环境中,一不小心就不知道当前执行的是哪个程序了。你可能想调试某个程序,却不小心运行了另一个程序。为确保你看到的就是要运行的程序,一种简单的方法是添加并修改打印语句。
练习1-3
将能想到的错误都犯一次是个不错的注意,这样你就知道编译器都会显示哪些错误消息了。在有些情况下,编译器会准确地指出错误,你只需要修复指出的错误即可;但有时候,错误消息会将你引入歧途。调试多了就会培养出感觉,知道什么情况下该信任编译器,什么情况下只能自力更生。
请在本章的 Hello World 程序中尝试下面每一种错误。每次修改后编译程序并阅读出现的错误消息,然后再修复错误。
(1) 删除其中的一个左大括号。
(2) 删除其中的一个右大括号。
(3) 将方法名 main 改为 mian。
(4) 删除单词 static。
(5) 删除单词 public。
(6) 删除单词 System。
(7) 将 println 改为 Println。
(8) 将 println 替换为 print。
(9) 删除其中的一个括号;添加一个括号。
