Java 中的类定义

2025年7月14日 | 阅读 6 分钟

面向对象编程中,是基本构建块。它可以定义为描述类实例化相关数据和行为的模板。实例化一个类就是创建该类的对象(变量),可以使用该对象来访问类的成员变量和方法。

类也可以称为逻辑模板,用于创建具有共同属性和方法的对象。

例如,一个Employee类可能以变量和方法的形式包含所有员工的详细信息。如果类被实例化,即如果创建了类的对象(例如 e1),我们就可以访问类的所有方法或属性。

在 Java 中定义类

Java 提供了保留关键字 class 来定义类。在类内部,我们声明方法和变量。

通常,类声明按照出现的顺序包括以下内容:

  1. 修饰符:类可以是 public 或具有默认访问权限。
  2. class 关键字:使用 class 关键字创建类。
  3. 类名:名称必须以首字母开头(约定俗成大写)。
  4. 父类(如果存在):类的父类(超类)的名称,如果存在,前面加上 extends 关键字。一个类只能扩展(子类化)一个父类。
  5. 接口(如果存在):类实现的接口的逗号分隔列表,如果存在,前面加上 implements 关键字。一个类可以实现多个接口。
  6. 主体:由花括号 {} 包围的类主体。

语法

类的组成部分

组件描述
字段存储数据的变量(例如,int age, String name)
方法定义行为的函数(例如,void run())
构造函数用于初始化对象的特殊方法(Car(String color, int speed))
嵌套类定义在另一个类内部的类
Interface可用于定义方法契约

Java 类示例

示例-1

让我们考虑下面的示例,以了解如何在 Java 中定义类并使用类对象来实现它。

示例

编译并运行

输出

Addition is:49
Subtraction is:41
Multiplication is:180
Division is:11

示例-2

在下面的示例中,我们创建了两个类:Employee 和 Main。Employee 类获取并显示员工详细信息。在 Main 中,我们创建 Employee 类的对象并使用其方法。在这里,我们使用类构造函数初始化对象。

示例

编译并运行

输出

Employee ID: 101
Employee Name: Peter
Employee Department: Salesforce
Employee Salary: 45000.0
Employee ID: 102
Employee Name: John
Employee Department: Tax Consultant
Employee Salary: 25000.0
Employee ID: 103
Employee Name: Anna
Employee Department: Development
Employee Salary: 55000.0

Java 类的属性

1. 类不是现实世界的实体

在 Java 中,对象的结构和行为由类定义,类是逻辑概念或蓝图。它不是一个有形的、现实世界的对象,而是一个可用于构建真实实例的模板。例如,一个名为 Car 的类可能定义 drive() 等方法以及 color 和 speed 等属性。

但是,直到从 Car 类创建对象,它才代表任何特定的汽车。

示例

2. 定义时不会占用内存,直到实例化

在 Java 中,类在定义时不会占用内存。当我们使用 new 关键字创建类的实例时,才会分配内存。

在此之前,类充当描述,存储在方法区而不是堆中。因此,类定义直到真正需要时才高效且轻量。

示例

3. 类是一种分组机制

在 Java 中,类将方法(函数)和数据成员(变量)组合成一个统一的实体。通过这种安排,可以逻辑地捕获对象的状态和行为。它促进了代码的模块化,使其更易于理解和维护。类包含属于对象的动作和数据。

示例

4. 可以有构造函数来初始化对象

在创建对象时,构造函数是一个用于初始化对象的特殊方法。除了与类同名外,它没有返回类型,甚至没有 void。可以重载构造函数,也可以对其进行参数化或默认化。当使用 new 关键字实例化对象时,它们会自动调用。

示例

5. 可以实现接口来遵循契约

为了提供特定功能,Java 类可以实现一个或多个接口。类需要实现接口定义的抽象方法。这使得 Java 能够实现多重继承和基于接口的抽象。它允许在类之间灵活地强制执行统一的行为。

示例

结论

在 Java 中,类是 Java 程序的构建块。我们应该根据规则定义类。类名必须遵循命名约定规则。

Java 类选择题

1. 以下哪个关键字用于在 Java 中定义类?

  1. interface
  2. class
  3. extends
  4. implements
 

答案:B

解释:Java 提供了保留关键字 class 来定义类。在类内部,我们声明方法和变量。


2. 类也可以称为 ______________ 模板,用于创建具有共同属性和方法的对象。

  1. 逻辑
  2. class
  3. 方法
  4. interface
 

答案:A

解释:类也可以称为逻辑模板,用于创建具有共同属性和方法的对象。


3. 类在定义时占用多少内存?

  1. 4 字节
  2. 8 字节
  3. 0 字节
  4. 不占用内存
 

答案:D

解释:在 Java 中,类在定义时不会占用内存。当我们使用 new 关键字创建类的实例时,才会分配内存。


4. 类定义 ______________ 和 ______________。

  1. 函数的状态和行为
  2. 类 State and behavior
  3. 对象的状态和行为
  4. 以上都不是
 

答案:C

解释:类定义对象的状态(字段/变量)和行为(方法/函数)。


5. 以下哪个不是类的组成部分?

  1. Interface
  2. 嵌套类
  3. 枚举
  4. 字段
 

答案:C

解释:类的组成部分包括字段、方法、构造函数、嵌套类和接口。