1. 概述
在这篇简明教程中,我们将介绍 Java 编程语言中的两个基础构建块:类(Class) 和 对象(Object)。它们是面向对象编程(OOP)的基本概念,用于对现实世界中的实体进行建模。
在 OOP 中:
- ✅ 类是对象的蓝图或模板,用来描述某一类实体的结构和行为。
- ✅ 对象是类的实例,是在运行时根据类创建出来的具体实体,拥有状态(字段)和行为(方法)。
2. 类
简单来说,类是对某种对象的定义或类型描述。在 Java 中,一个类可以包含以下内容:
- 字段(fields):用于保存对象的状态
- 构造器(constructors):用于创建对象
- 方法(methods):用于定义对象的行为
来看一个表示 Car(汽车) 的简单 Java 类:
class Car {
// 字段
String type;
String model;
String color;
int speed;
// 构造器
Car(String type, String model, String color) {
this.type = type;
this.model = model;
this.color = color;
}
// 方法
int increaseSpeed(int increment) {
this.speed = this.speed + increment;
return this.speed;
}
// ...
}
这个类是对“汽车”这一概念的通用描述。我们可以通过它创建各种类型的汽车对象。字段用于保存状态,构造器用于初始化对象。
默认构造器
每个 Java 类在没有显式定义构造器的情况下,会默认提供一个无参构造器。它会将所有字段初始化为默认值(如 String
为 null
,int
为 0):
Car(){}
但在这个例子中,我们定义了一个带参数的构造器,因为我们希望在创建对象时就指定它的字段值:
Car(String type, String model) {
// ...
}
✅ 总结:我们定义了一个类来描述汽车,它的属性通过字段体现,行为通过方法体现。
3. 对象
类在编译时被处理,而 对象是在运行时从类中创建出来的。
对象也被称为类的 实例(instance),它们通过构造器进行创建和初始化:
Car focus = new Car("Ford", "Focus", "red");
Car auris = new Car("Toyota", "Auris", "blue");
Car golf = new Car("Volkswagen", "Golf", "green");
我们通过同一个类创建了三个不同的 Car 对象。✅ 这就是类的核心价值:一次定义,多次复用。
目前这些车的速度都是 0,处于静止状态。我们可以通过调用 increaseSpeed
方法改变它们的状态:
focus.increaseSpeed(10);
auris.increaseSpeed(20);
golf.increaseSpeed(30);
现在,这些车都在以不同的速度行驶,状态发生了变化。
⚠️ 为了更好地控制类的访问权限,我们通常会使用 访问修饰符 来限制类、构造器、字段和方法的可见性。
4. 访问修饰符
在之前的例子中,我们省略了访问修饰符以简化代码。这样做实际上使用了默认的 包级私有(package-private) 修饰符,意味着只有同一个包中的类可以访问。
但在实际开发中,我们通常会使用如下修饰符:
public
:表示该类、方法或字段可以被任何地方访问private
:仅限本类内部访问
来看一个完整的示例,加上访问控制:
public class Car {
private String type;
// ...
public Car(String type, String model, String color) {
// ...
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public int getSpeed() {
return speed;
}
// ...
}
说明:
- ✅ 类标记为
public
:可以在任何包中使用 - ✅ 构造器标记为
public
:可以在任何地方创建对象 - ❌ 字段标记为
private
:不能直接从外部访问
我们通过 getter 和 setter 方法 来提供对字段的受控访问:
type
和model
字段没有 getter/setter,因为它们是初始化时设定的内部数据color
可读可写speed
只读,修改需通过increaseSpeed()
和decreaseSpeed()
方法
✅ 通过访问控制,我们实现了对对象状态的封装,这是 OOP 的核心原则之一。
5. 总结
本文介绍了 Java 中两个最基础的概念:类和对象。我们展示了如何定义类、创建对象,并通过访问修饰符控制类成员的可见性。
如果你希望继续深入学习 Java OOP,建议了解以下内容:
📘 示例代码已上传至 GitHub:GitHub 示例代码