📜  java中的类(1)

📅  最后修改于: 2023-12-03 14:42:58.762000             🧑  作者: Mango

Java中的类

在Java中,类是一种封装数据和方法的机制,是面向对象编程(OOP)的基本单位。通过类,我们可以创建出具有相似或相同属性和方法的对象。以下是Java类的一些重要特性:

  • 类有成员变量和成员方法,成员变量是类的属性,成员方法是类的行为。
  • 类可以用来创建对象,每个对象都有自己的一组属性和方法。
  • 类可以继承其他类,从而获得其属性和方法。
  • 类可以实现接口,从而定义一组规范,要求实现这些规范的类具有特定的行为。
类的定义

下面是一个简单的Java类的定义:

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 void setName(String name) {
        this.name = name;
    }
    
    public int getAge() {
        return age;
    }
    
    public void setAge(int age) {
        this.age = age;
    }
}

这个类叫做Person,它有两个成员变量nameage,以及四个成员方法PersongetNamesetNamegetAge。构造方法Person用来创建Person对象并初始化其成员变量。

类的实例化

下面是一个示例代码,演示如何创建Person对象:

Person person = new Person("Tom", 20);

这行代码创建了一个名为personPerson对象,传入的参数是"Tom"20",分别对应nameage两个成员变量。

类的继承

一个类可以从另一个类中继承属性和方法。这个“父类”叫做超类或基类,而继承这些属性和方法的子类叫做派生类或子类。下面是一个继承了Person类的Student类的定义:

public class Student extends Person {
    private int studentId;
    
    public Student(String name, int age, int studentId) {
        super(name, age);
        this.studentId = studentId;
    }
    
    public int getStudentId() {
        return studentId;
    }
    
    public void setStudentId(int studentId) {
        this.studentId = studentId;
    }
}

这里的Student类继承了Person类,它多了一个成员变量studentId和一个构造方法来初始化这个成员变量。除此之外,它还实现了一个getStudentId方法和一个setStudentId方法。

类的接口实现

Java中的接口是一种定义规范的机制,它要求实现这些规范的类都有特定的行为。下面是一个实现了Comparable接口的Person类的定义:

public class Person implements Comparable<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 void setName(String name) {
        this.name = name;
    }
    
    public int getAge() {
        return age;
    }
    
    public void setAge(int age) {
        this.age = age;
    }
    
    @Override
    public int compareTo(Person o) {
        return this.age - o.getAge();
    }
}

这里的Person类实现了Comparable接口,它要求实现compareTo方法以实现对象之间的比较。这个方法比较了两个Person对象的年龄,并返回它们之间的差值。

总结

Java中的类是实现面向对象编程的关键。通过定义类和实例化对象,我们可以构建出一个具有各种属性和行为的程序。类的继承和接口实现进一步扩展了类的能力,使得我们能够更加方便地复用代码并满足特定的需求。