2. 在Java中,什么是类?

90 阅读2分钟

2. 在Java中,什么是类?什么是类?类的定义创建对象和使用类输出结果总结

2. 在Java中,什么是类?

什么是类?

在面向对象编程中,是定义对象的模板。类描述了对象的状态和行为,但它本身不是一个实际的对象。当你想要创建多个相似的对象时,你会基于这个类创建它们。在应用程序中,通常会有多个相同类型的对象,它们共享相同的类定义。例如,虽然每辆自行车可能有不同的属性(如速度、踏频、档位等),它们都可以是同一个 Bicycle 类的实例。

类的定义

我们来看一个具体的例子。假设我们定义了一个 Bicycle 类,它包含了自行车的状态(如踏频、速度和档位)以及改变这些状态的方法(如改变踏频、更换档位、加速和刹车)。

class Bicycle {
​
    int cadence = 0;  // 踏频
    int speed = 0;    // 速度
    int gear = 1;     // 档位
​
    // 更改踏频
    void changeCadence(int newValue) {
         cadence = newValue;
    }
​
    // 更改档位
    void changeGear(int newValue) {
         gear = newValue;
    }
​
    // 加速
    void speedUp(int increment) {
         speed = speed + increment;   
    }
​
    // 刹车
    void applyBrakes(int decrement) {
         speed = speed - decrement;
    }
​
    // 打印当前状态
    void printStates() {
         System.out.println("cadence:" +
             cadence + " speed:" + 
             speed + " gear:" + gear);
    }
}

在这个类中,cadencespeedgear 是表示自行车状态的字段。类还定义了多个方法:changeCadence()changeGear()speedUp()applyBrakes(),这些方法允许我们更改对象的状态。

创建对象和使用类

类本身只是一个模板,我们需要创建类的实例才能实际使用它们。在下面的 BicycleDemo 类中,我们创建了两个 Bicycle 对象,并分别对它们调用了方法:

class BicycleDemo {
    public static void main(String[] args) {
​
        // 创建两个不同的自行车对象
        Bicycle bike1 = new Bicycle();
        Bicycle bike2 = new Bicycle();
​
        // 调用 bike1 对象的方法
        bike1.changeCadence(50);
        bike1.speedUp(10);
        bike1.changeGear(2);
        bike1.printStates();
​
        // 调用 bike2 对象的方法
        bike2.changeCadence(50);
        bike2.speedUp(10);
        bike2.changeGear(2);
        bike2.applyBrakes(5);
        bike2.speedUp(10);
        bike2.changeGear(3);
        bike2.printStates();
    }
}

输出结果

运行以上代码时,我们会看到如下输出,表示每辆自行车的结束状态(踏频、速度和档位):

cadence:50 speed:10 gear:2
cadence:50 speed:15 gear:3

总结

  • 是定义对象的模板,描述了对象的状态和行为。
  • 每个类实例化出来的对象(如 bike1bike2)可以有不同的状态,但它们都遵循相同的类定义。
  • 类中的方法定义了对象如何与外部世界互动,通过这些方法,我们可以修改对象的状态。