📜  Python类和对象(1)

📅  最后修改于: 2023-12-03 15:04:41.655000             🧑  作者: Mango

Python类和对象

在Python中,一切皆对象。对象是实现面向对象编程(OOP)的核心。类是OOP中的另一个重要概念,是对象的蓝本或模板。

定义类

在Python中,定义一个类通常包括:

  • 类名
  • 属性(也称数据成员)
  • 方法

以下是一个简单的Python类的示例:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def get_name(self):
        return self.name

    def get_age(self):
        return self.age

这个类的名称是Person。它有两个属性——nameage,以及两个方法——get_name()get_age()

__init__() 方法是Python中特殊的一个方法,用于初始化对象。在上面的例子中,__init__() 方法使用两个参数nameage来初始化新对象。

注意:所有方法都必须以self参数开头。self是指调用该方法的对象本身。

实例化对象

现在,我们可以使用类创建对象。在Python中,使用类创建对象也被称为实例化对象。下面是一个简单的实例化示例,该示例创建Person类的两个不同对象:

p1 = Person("Alice", 25)
p2 = Person("Bob", 30)

print(p1.get_name(), p1.get_age())
print(p2.get_name(), p2.get_age())

实例化之后,我们可以使用对象的属性和方法来操作对象。

输出结果:

Alice 25
Bob 30
继承

继承是OOP中的另一个重要概念,用于创建新类,该类继承父类的所有属性和方法。这样,我们就可以重用现有的代码,同时添加新的子类功能。

以下是使用继承创建新类的一个示例:

class Student(Person):
    def __init__(self, name, age, student_id):
        super().__init__(name, age)
        self.student_id = student_id

    def get_student_id(self):
        return self.student_id

这个类的名称是Student。它继承了Person类,并添加了一个新的属性student_id,以及一个新的方法get_student_id()

注意:super().__init__() 是用于调用父类的__init__()方法的特殊语法。它将nameage参数传递给父类,以便使用父类的__init__()方法初始化新对象。

现在,我们可以使用Student类创建新对象:

s = Student("Charlie", 20, "123456")

print(s.get_name(), s.get_age(), s.get_student_id())

输出结果:

Charlie 20 123456
总结

Python类和对象是实现OOP的核心概念。在Python中,所有东西都是对象,而类是创建对象的模板。通过定义类,我们可以封装数据和方法以实现代码重用和简化开发过程。继承是一个强大的技术,允许我们创建新类,并在现有类的基础上添加新的功能。