25 面向对象编程基础之类和对象的基本概念

在本章中,我们将探讨 Java 语言的面向对象编程(OOP)基础,其中重点介绍 对象 的基本概念。这些概念是学习面向对象编程的基石,理解它们对于后续的学习尤为重要。

1. 类的定义

在 Java 中, 是一种模拟现实世界事物的蓝图或模板。通过类,我们可以定义对象的属性和行为。类中包含的数据被称为属性(或成员变量),而类中的方法被称为行为(或成员方法)。

示例:定义一个简单的类

1
2
3
4
5
6
7
8
9
10
public class Dog {
// 属性
String name;
int age;

// 行为
void bark() {
System.out.println(name + " says: Woof!");
}
}

在上面的例子中,Dog 类定义了两个属性:nameage,以及一个行为:bark 方法。这是一个简单的类定义,展示了如何使用类来表示一个事物——在这里是狗。

2. 对象的概念

对象 是类的具体实例。通过类的构造,我们可以创建任意数量的对象,而每个对象都有自己独特的属性值。对象由类定义,但是对象本身包含具体的数据。

示例:创建对象

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Main {
public static void main(String[] args) {
// 创建 Dog 类的对象
Dog myDog = new Dog();

// 为对象的属性赋值
myDog.name = "Buddy";
myDog.age = 3;

// 调用对象的方法
myDog.bark(); // 输出: Buddy says: Woof!
}
}

在这个示例中,我们通过 new 关键词创建了一个 Dog 类的对象 myDog。然后我们给这个对象的属性 nameage 赋值,并调用了 bark 方法。

3. 类与对象的关系

在面向对象编程中,类是对对象的抽象,而对象是类的具体体现。每个对象都有从类中获得的属性和行为,但具体的属性值可能不同,这使得每个对象都是独特的。

  • 类是模板,而对象是基于模板创建的实例。
  • 类定义了对象可以拥有的数据和可以执行的操作。

4. 封装

封装 是面向对象编程中的一个重要概念,指将数据(属性)和操作(方法)封装在一个类中,并提供访问控制,以保护这些数据。通常,我们会将类的属性设为private,并通过public方法进行访问。

示例:封装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Person {
// 私有属性
private String name;
private int age;

// 公共的构造方法
public Person(String name, int age) {
this.name = name;
this.age = age;
}

// 公共方法获取属性值
public String getName() {
return name;
}

public int getAge() {
return age;
}
}

通过上面的示例,Person 类的属性 nameage 是私有的(private),外部代码无法直接访问它们。我们提供了 getNamegetAge 方法来获取这些属性的值,从而实现了封装。

创建对象并访问属性

1
2
3
4
5
6
7
8
public class Main {
public static void main(String[] args) {
Person person = new Person("Alice", 30);

System.out.println("Name: " + person.getName()); // 输出: Name: Alice
System.out.println("Age: " + person.getAge()); // 输出: Age: 30
}
}

5. 小结

在本章中,我们介绍了 对象 的基本概念,理解了它们的定义和使用方法。我们还认识了 封装 这一概念,了解了如何保护数据并提供安全的访问方式。

通过学习类和对象,我们将为后续深入研究面向对象编程的其他特性做好准备,如继承和多态等。在下一章中,我们将详细介绍 构造方法 的使用,继续扩展我们的知识基础。

25 面向对象编程基础之类和对象的基本概念

https://zglg.work/java-zero/25/

作者

IT教程网(郭震)

发布于

2024-08-10

更新于

2024-08-10

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论