Python面向对象编程:实例理解类、对象和继承
在Python中,面向对象编程(Object-Oriented Programming, OOP)是一种程序设计范式,其中的实体(如事物或概念)被表示为对象,这些对象可以拥有属性(特性),并能执行操作。
- 类:是对象的模板。它定义了对象的属性和方法。在Python中,使用
class
关键字定义一个类。
# 定义一个名为Person的类
class Person:
# 属性:描述对象特征的数据项
name = 'John Doe'
age = 0
# 方法:定义对象能够执行的操作
def introduce(self):
print(f"Hello, my name is {self.name} and I am {self.age} years old.")
# 创建Person类的实例(对象)
person1 = Person()
# 访问和修改对象属性
person1.name = 'Jane Doe'
print(person1.name) # 输出:Jane Doe
# 调用对象的方法
person1.introduce() # 输出:Hello, my name is Jane Doe and I am 0 years old.
- 继承:当一个类(子类)继承另一个类(父类)的属性和方法时,就实现了继承。在Python中,使用
class
关键字后面跟着父类名,再定义子类:
# 定义父类Person
class Person:
# 父类属性
name = 'John Doe'
age = 0
# 父类方法
def introduce(self):
print(f"Hello, my name is {self.name} and I am {self.age} years old.")
# 定义子类Student,继承自Person类
class Student(Person):
# 子类特有的属性
subject = 'Math'
# 子类方法重写(覆盖父类方法)
def introduce(self):
super().introduce() # 调用父类的介绍方法
print(f"Moreover, I am studying {self.subject}}.")
# 创建子类对象
student1 = Student()
# 访问和修改对象属性
student1.name = 'Jane Smith'
print(student1.name) # 输出:Jane Smith
# 调用对象的方法
student1.introduce() # 输出:
# Hello, my name is Jane Smith and I am 0 years old.
# Moreover, I am studying Math
这样,子类Student
就继承了父类Person
的属性和方法。
还没有评论,来说两句吧...