Java编程入门指南
立即解锁
发布时间: 2025-08-18 00:35:30 阅读量: 11 订阅数: 14 


Java编程基础:科学家与工程师的必备技能
### Java编程入门指南
#### 1. 编程简介
计算机在我们日常生活中变得不可或缺。即便你不使用计算机写信、浏览互联网或玩游戏,每次从自动取款机取钱、使用手机或拨打自动查询电话时,你都在使用计算机。计算机本身没有智能,它只能遵循详细的指令集,因此需要程序员编写这些指令,才能让计算机为人所用。从文字处理器到网络浏览器,每一款软件都是由程序员(更可能是一个程序员团队)编写的。
计算机能理解的指令集被称为机器语言,在机器语言中,一切都被编码为二进制数字(1 和 0)。不久前,程序员还必须用这种机器语言编写程序。如今,我们可以使用高级语言(如 Java)编写程序。编译器(另一个程序)负责将用编程语言编写的程序翻译成机器代码,以便在计算机上运行。一些游戏程序员仍选择使用接近机器代码的低级汇编语言,因为这样程序运行速度更快。
Java 作为一种编程语言,有着有趣的历史。它由 Sun Microsystems 的 James Gosling 于 1991 年开发。Gosling 是名为“Green Team”的 13 人秘密团队的一员。最初的目标并非开发新语言,而是开发数字控制的消费设备和计算机。在开发家庭娱乐设备控制器(称为 *7)时,团队意识到需要一种新的处理器无关语言。第一个版本被称为“Oak”(以 Gosling 窗外的树命名)。尽管 *7 未能成功,但这种语言却发展起来。1995 年,Netscape 宣布将 Java 纳入 Netscape Navigator,此后,Java 作为互联网编程语言广受欢迎。Java 不仅在互联网编程方面表现出色,也是一种优秀的通用编程语言。它是一种流行且设计良好的面向对象语言,其主要特点之一是平台独立性,通过“Java 虚拟机”(JVM)实现。编译器将 Java 程序翻译成中间代码(字节码),字节码独立于机器,但需要 JVM 进行解释。
#### 2. 为 Java 编程设置计算机
在开始编程之前,你需要安装以下两款软件:
- **编辑器或集成开发环境(IDE)**:编辑器允许你输入文本并保存到文件。文本编辑器与文字处理器不同,通常不进行格式设置。一些文本编辑器(如 Microsoft 的 Notepad)没有专门为程序员设计的功能,而其他编辑器则有支持编程的特殊功能。你可以从在线软件库(如 http://www.tucows.com)找到许多共享软件和免费软件编辑器,建议选择具有 Java 语法着色(也称为语法高亮)功能的编辑器。IDE 提供编辑、编译程序的功能以及其他编程支持,但通常需要付费。有些 Java IDE 会使编程变得复杂(如需要创建项目),因此在某些情况下,使用简单的文本编辑器可能更容易。本书假设你使用文本编辑器。
- **Java 编译器**:推荐使用 Sun Microsystems 的 Java 软件开发工具包(SDK),它是流行的选择,因为可以免费获取。本书使用的是 1.3.1 版本,你也可以使用更高版本。其他兼容 Java 2 的编译器也可以使用。
##### 安装 Java 2
“Java 2”指的是 Sun 的 Java SDK 从 1.2 版本开始的所有版本(包括 1.3.x),之前的版本称为“Java 1”。安装 Java 2 的步骤如下:
1. 使用你喜欢的网络浏览器访问 Sun 的 Java 网站:http://www.java.sun.com
2. 从“Products and APIs”链接到“Java 2 Platform, Standard Edition”(SDK),选择相关平台并按照说明操作。安装完成后,你的目录结构应类似于图 1.1 所示。
3. 建议下载 Java 2 平台标准版文档,在学习编程时,你会经常需要参考这些文档。
4. 你需要更改 PATH 变量,使其包含 javac.exe 和 java.exe 文件所在的文件夹。具体操作细节可在 jdk 文件夹中的 readme.html 文件中找到。
##### Jikes 作为替代编译器
如果 Java 2 编译器在你的家用计算机上运行缓慢,你可以尝试使用 Jikes 作为替代的更快编译器。Jikes 由 IBM 开发,是开源软件,它与 Sun 的 SDK 配合使用,因此你仍需按照上述说明安装 Java 2(实际上只需要安装运行时环境或 JRE)。Jikes 是免费的,你可以从以下网站下载:http://oss.software.ibm.com/developerworks/opensource/jikes/ 。下载的 zip 文件包含一个名为 jikes.exe 的文件,设置 Jikes 的最简单方法如下:
1. 更改 PATH 变量,使其包含 jikes.exe 文件所在的文件夹。
2. 按以下方式定义 JIKESPATH(注意:此设置假设 Java 安装在 C 盘,如果不是,请相应更改文件夹):
```plaintext
set JIKESPATH=c:\jdk1.3.1\jre\lib\rt.jar;
c:\jdk1.3.1\jre\lib\ext\essential.jar
```
3. 现在你可以使用 jikes 命令代替 javac 进行编译。
##### 安装 essential 包
与本书配套的网站提供了一个 Java 代码包 essential,包含绘制图形、处理矩阵等功能。安装 essential 包非常简单,在网站上找到 essential.jar 文件,将其复制到 jdk 文件夹的特定位置,即安装 essential 作为 Java 的扩展。将 essential.jar 文件复制到以下目录:
```plaintext
c:\jdk1.3.1\jre\lib\ext
```
如果你的 SDK 版本存储在其他位置,请将其复制到等效的 \jre\lib\ext 文件夹。
#### 3. 编写第一个 Java 程序
现在我们来编写第一个 Java 程序,不要担心不理解某些内容,后续会详细解释。
1. **编写程序**:打开编辑器,输入以下 Java 程序:
```java
public class FirstProgram
{
public static void main (String[] args)
{
System.out.print("Hello, 2 + 3 = ");
System.out.println(2 + 3);
System.out.println("Good Bye");
}
}
```
注意 Java 是区分大小写的,System 与 SYSTEM 或 system 不同。
2. **保存程序**:将程序保存为 FirstProgram.java 文件,文件名的大小写很重要,确保 F 和 P 为大写,其余为小写。
3. **编译程序**:打开 MS-DOS 命令提示符窗口,将目录更改为保存文件的目录,输入以下命令:
```plaintext
javac FirstProgram.java
```
按下 Enter 键后,如果没有错误,命令提示符将返回。如果有错误,你需要返回编辑器,确保代码复制正确。继续重复步骤 2 和 3,直到没有错误为止。
4. **运行程序**:程序成功编译后,输入以下命令运行程序:
```plaintext
java FirstProgram
```
你应该会看到如图 1.2 所示的输出。
##### 程序编译时会发生什么
使用 javac 命令编译 FirstProgram.java 时,会创建一个名为 FirstProgram.class 的文件,该文件是 Java 字节码格式(接近机器代码)。如果你尝试用文本编辑器打开这个文件,可能会出错或显示一些奇怪的字符。使用 java 命令运行程序时,.class 文件由 Java 虚拟机解释。如果你想让别人运行你的程序,只需将 .class 文件发送给他们,只要他们的计算机上安装了 Java 运行时环境,就可以运行程序,无需重新编译。
##### 理解 FirstProgram
下面解释程序的工作原理。图 1.3 展示了一个简单 Java 程序的组成部分。灰色区域的部分是每次编写程序时都需要的,我们称之为“应用程序模板”,它是编写简单程序的基本结构。灰色区域中唯一不同的部分是程序的名称(也是类的名称)。每次编写程序时,你都需要决定给程序取什么名字。例如,以下是一个名为 AnotherProgram 的程序大纲:
```java
public class AnotherProgram
{
public static void main(String[] args)
{
}
}
```
这个程序运行时不会有任何操作,因为中间的花括号之间没有语句。我们称花括号为块标记,它们标记代码块的开始和结束。在应用程序模板中,第一个和最后一个花括号标记整个程序的开始和结束,中间的两个花括号标记主方法的代码块。主方法的作用将在后面解释。
现在尝试以下操作:
1. 复制 FirstProgram 并保存为 SecondProgram.java。
2. 在 SecondProgram.java 中,将 class 语句后的程序名称更改为 SecondProgram。
3. 保存、编译并运行 SecondProgram。
这样你就有了一个可以稍后修改的程序副本。
##### 屏幕打印命令
现在我们来看看主方法中的语句:
```java
System.out.print("Hello, 2 + 3 = ");
System.out.println(2 + 3);
System.out.println("Good Bye");
```
每条语句以分号结尾,这表示语句的结束,类似于英语句子末尾的句号。所有三行都以 System.out 开头,它指的是计算机的屏幕。System.out.print 命令用于向屏幕打印内容,具体要打印的内容在括号内指定。在第一条语句中,我们要求屏幕显示一个字符串,字符串是用双引号括起来的字符序列。
以下是一个简单的流程图,展示了编写和运行 Java 程序的基本步骤:
```mermaid
graph LR
A[编写程序] --> B[保存程序]
B --> C[编译程序]
C -->|有错误| B
C -->|无错误| D[运行程序]
```
下面是一个表格,总结了安装和设置 Java 编程环境的步骤:
|步骤|操作|
| ---- | ---- |
|安装编辑器或 IDE|选择具有 Java 语法着色功能的文本编辑器或合适的 IDE|
|安装 Java 编译器|推荐使用 Sun 的 Java SDK|
|安装 Java 2|访问 Sun 网站,按步骤操作,更改 PATH 变量|
|安装 Jikes(可选)|从指定网站下载,设置 PATH 和 JIKESPATH|
|安装 essential 包|从网站下载 essential.jar 文件,复制到指定目录|
### Java编程入门指南
#### 4. 输入和输出
在 Java 编程中,输入和输出是非常重要的操作。下面我们来详细了解一下。
##### 键盘输入的工作原理
从键盘获取输入是编程中常见的需求。在 Java 中,有多种方式可以实现从键盘读取数据。
##### 从键盘读取数字
可以使用相关的类和方法来读取键盘输入的数字。例如,通过特定的输入流和解析方法,将输入的字符串转换为数字。
##### 不使用 Keyboard 类的输入(可选)
除了常规的输入方式,还可以选择不使用 Keyboard 类进行输入。这在某些特定场景下可能会更灵活。
##### 示例:计算复利
下面通过一个计算复利的示例来展示输入和输出的应用。
```java
import java.util.Scanner;
public class CompoundInterest {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入本金: ");
double principal = scanner.nextDouble();
System.out.print("请输入年利率: ");
double rate = scanner.nextDouble();
System.out.print("请输入存款年限: ");
int years = scanner.nextInt();
double amount = principal * Math.pow(1 + rate, years);
System.out.println("复利计算结果: " + amount);
}
}
```
这个示例中,我们使用 `Scanner` 类从键盘读取本金、年利率和存款年限,然后计算复利并输出结果。
#### 5. 注释
在 Java 代码中,注释是一种非常重要的元素。它可以帮助程序员更好地理解代码,提高代码的可读性和可维护性。Java 中有两种注释方式:
- **单行注释**:以 `//` 开头,用于注释一行代码。例如:
```java
// 这是一个单行注释
System.out.println("Hello World");
```
- **多行注释**:以 `/*` 开头,以 `*/` 结尾,可以注释多行代码。例如:
```java
/*
这是一个多行注释
可以包含多行内容
*/
System.out.println("Hello Java");
```
#### 6. 使用对象
在 Java 中,对象是面向对象编程的核心概念。下面介绍如何使用一些常见的类对象。
##### 使用 Turtle 类
Turtle 类可以用于绘制图形。通过调用 Turtle 类的方法,可以控制一个虚拟的“乌龟”在屏幕上移动和绘制。以下是一个简单的示例:
```java
import essential.Turtle;
public class TurtleExample {
public static void main(String[] args) {
Turtle turtle = new Turtle();
turtle.forward(100);
turtle.right(90);
turtle.forward(100);
}
}
```
这个示例中,我们创建了一个 Turtle 对象,并调用其 `forward` 和 `right` 方法来绘制一个直角。
##### 关于 essential 包的帮助
essential 包提供了很多有用的类和方法。可以通过查看相关文档来获取关于 essential 包的详细信息。
##### 使用 Graph 类
Graph 类可以用于绘制图形。以下是一个简单的示例:
```java
import essential.Graph;
public class GraphExample {
public static void main(String[] args) {
Graph graph = new Graph();
graph.addPoint(0, 0);
graph.addPoint(1, 1);
graph.addPoint(2, 4);
graph.draw();
}
}
```
这个示例中,我们创建了一个 Graph 对象,并添加了几个点,最后调用 `draw` 方法绘制图形。
#### 7. Java 在万维网中的应用(可选)
Java 也可以在万维网中使用。例如,可以编写 Java 小程序(Applet)在网页中运行。不过在本书中,我们主要使用 Java 应用程序。以下是一个简单的 Java Applet 示例:
```java
import java.applet.Applet;
import java.awt.Graphics;
public class HelloApplet extends Applet {
public void paint(Graphics g) {
g.drawString("Hello from Java Applet", 20, 20);
}
}
```
要在网页中运行这个 Applet,需要在 HTML 文件中嵌入相应的代码。
#### 8. 总结
通过以上内容,我们学习了 Java 编程的基础知识,包括编程简介、环境设置、第一个 Java 程序的编写、输入输出、注释、使用对象以及 Java 在万维网中的应用等。下面通过一个表格来总结这些内容:
|知识点|描述|
| ---- | ---- |
|编程简介|了解计算机编程的基本概念和 Java 语言的历史|
|环境设置|安装编辑器、编译器和相关包|
|编写程序|掌握编写、保存、编译和运行 Java 程序的步骤|
|输入输出|学会从键盘读取数据和向屏幕输出数据|
|注释|使用单行和多行注释提高代码可读性|
|使用对象|使用 Turtle 类和 Graph 类绘制图形|
|Java 在万维网中的应用|简单了解 Java Applet 的编写和使用|
以下是一个 mermaid 流程图,展示了 Java 编程的主要流程:
```mermaid
graph LR
A[编程简介] --> B[环境设置]
B --> C[编写程序]
C --> D[输入输出]
D --> E[注释]
E --> F[使用对象]
F --> G[Java 在万维网中的应用]
```
希望通过这些内容,你能够对 Java 编程有一个初步的认识,并开始编写自己的 Java 程序。在后续的学习中,你可以进一步深入学习 Java 的高级特性和应用。
0
0
复制全文
相关推荐










