《Java 2 实用教程》是一本全面介绍Java编程语言及其应用的指南书,适合初学者和中级程序员阅读。书中包含丰富的示例代码与实践项目,帮助读者快速掌握Java开发技能。
### Java2实用教程知识点概述
#### 一、Java语言入门
**知识点1:基本语法**
- **类定义**: 在Java中,程序的基本单位是类。一个类定义了对象的属性和行为。
- 示例代码:
```java
public class Hello {
public static void main(String[] args[]) {
System.out.println(你好,很高兴学习Java);
}
}
```
- **解释**: 上述代码定义了一个名为`Hello`的公共类,其中包含一个主方法`main`。`main`方法是Java程序执行的入口点。
**知识点2:对象与类**
- **对象创建**: 使用`new`关键字创建对象实例。
- 示例代码:
```java
public class People {
int height;
String ear;
void speak(String s) {
System.out.println(s);
}
}
class A {
public static void main(String[] args) {
People zhubajie = new People(); 创建对象
zhubajie.height = 170;
zhubajie.ear = 两只大耳朵;
System.out.println(身高: + zhubajie.height);
System.out.println(zhubajie.ear);
zhubajie.speak(师傅,咱们别去西天了,改去月宫吧);
}
}
```
- **解释**: 这段代码中,`People`类定义了两个属性`height`和`ear`以及一个方法`speak`。通过`new People()`创建了一个`People`类型的对象`zhubajie`,并调用了`speak`方法。
#### 二、GUI编程基础
**知识点1:Applet编程**
- **Applet类**: `Applet`是Java中用于创建图形用户界面的基础类之一。
- 示例代码:
```java
import java.applet.Applet;
import java.awt.Graphics;
public class Boy extends Applet {
public void paint(Graphics g) {
g.setColor(Color.red);
g.drawString(我一边喝着咖啡,一边学Java呢, 5, 30);
g.setColor(Color.blue);
g.drawString(我学得很认真, 10, 50);
}
}
```
- **解释**: 这段代码定义了一个名为`Boy`的类,它继承自`Applet`类。`paint`方法用于绘制图形或文本到Applet窗口中。
#### 三、标识符、关键字和数据类型
**知识点1:Unicode字符编码**
- **Unicode编码**: Java使用Unicode编码来表示字符。
- 示例代码:
```java
public class Example2_1 {
public static void main(String[] args) {
char chinaWord = 你, japanWord = ぁ;
int p1 = 36328, p2 = 38358;
System.out.println(汉字你在unicode表中的顺序位置: + (int) chinaWord);
System.out.println(日语ぁ在unicode表中的顺序位置: + (int) japanWord);
System.out.println(unicode表中第20328位置上的字符是: + (char) p1);
System.out.println(unicode表中第12358位置上的字符是: + (char) p2);
}
}
```
- **解释**: 这段代码演示了如何获取特定Unicode字符的位置以及如何根据位置获取对应的Unicode字符。
**知识点2:数据类型转换**
- **自动类型提升**: 在进行运算时,较小的数据类型会自动提升为较大的数据类型。
- 示例代码:
```java
public class Example2_2 {
public static void main(String[] args) {
int c = 2200;
long d = 8000;
float f;
double g = 123456789.123456789;
c = (int) d;
f = (float) g; // 导致精度的损失
System.out.print(c= + c);
System.out.println(d= + d);
System.out.println(f= + f);
System.out.println(g= + g);
}
}
```
- **解释**: 此代码展示了不同数据类型之间的显式转换。注意当将`double`类型转换为`float`类型时可能会导致精度损失。
**知识点3:数组**
- **数组赋值**: 数组是一种容器对象,用于存储相同类型的数据集合。
- 示例代码:
```java
public class Example2_3 {
public static void main(String[] args) {
int[] a = {100, 200, 300};
int[] b = {10, 11, 12, 13, 14, 15, 16};
b = a; // 引用赋值
b[0] = 123456;
System.out.println(数组a: + a[0] + , + a