作者制作不易,关注、点赞、收藏一下吧!
目录
1.Python 类的概念
在Python中,类是一种用于创建对象的蓝图或模板,它定义了一组相似的对象应该具有哪些属性和方法。类是面向对象编程(OOP)中的一个核心概念,它支持封装、继承和多态这三大特性,使得代码更加模块化、可重用且易于维护。
1.1. 封装
封装是指将数据和操作数据的方法绑定在一起,隐藏内部实现细节,并通过公共接口暴露给外部。这样做的好处是可以限制对对象内部状态的访问,提高安全性,同时也简化了对象的使用方式。
1.2. 继承
继承允许一个类(子类)继承另一个类(父类)的属性和方法,从而可以复用代码并扩展功能。子类不仅可以使用父类已有的功能,还可以覆盖或添加新的方法来适应更具体的需求。
1.3. 多态
多态是指允许不同类的对象对同一消息作出响应的能力。简单来说,就是同一个接口可以被不同的对象以不同的方式实现。这增加了程序的灵活性和扩展性。
2.Python 类的基本语法
创建一个简单的类:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def print_(self):
print(f"Hello, my name is {self.name} and I am {self.age} years old.")
__init__() 方法是一个特殊方法,称为构造函数或初始化方法,在创建新实例时自动调用。
self() 参数代表当前实例本身,通过它可以访问类的属性和方法。
print_() 是一个普通方法,用于打印个人信息。
创建对象并调用方法:
apk = Person("apk", 1)
apk.print_() # 输出: Hello, my name is apk and I am 1 years old.
apk 是创建的对象,apk.print_() 在调用方法。
3.类的特性
3.1.属性与方法
属性:类中定义的变量称为属性,可以在类的任何地方访问。
方法:类中定义的函数称为方法,通常用来实现特定的功能。
3.2.类方法与静态方法
类方法:通过装饰器 @classmethod 定义,第一个参数通常是 cls,表示类本身,而不是实例对象。
静态方法:通过装饰器 @staticmethod 定义,不传递类或实例作为第一个参数。
3.3.特殊方法
Python 中有一些特殊方法(也叫魔术方法),它们以双下划线开头和结尾,如 __init__、__str__ 等,用于实现类的一些内置行为。
3.4.继承
继承由父类( 基类 )和子类( 派生类 )构成。
定义一个父类animal和一个子类cat:
class animal:
def speak(self):
print("I am a animal.")
def print_(self):
print("Hello!")
class cat(animal):
def speak(slef):
print("I am a cat.")
an = animal()
ca = cat()
an.speak()
an.print_()
ca.speak()
ca.print_()
# 运行结果:
# I am a animal.
# Hello!
# I am a cat.
# Hello!
这里 cat类 继承自 animal类 ,并覆盖了 speak() 方法。
3.5.多态
def duotai(animal_type):
animal_type.speak()
duotai(ca)
# 运行结果:
# I am a cat.