Python 类

1.一个简单的类

__init__()是一个特殊的方法,每当根据Dog类创建新的实例时,Python都会自动运行它。形参self是必不可少的,且不用手动为它传递实参。self为前缀的变量可以供类中的所有方法使用,我们称之为属性。

【实例】:

class Dog:
    def __init__(self):
        self.name = 'kkll'
        self.age = 3

my_dog = Dog()
print(my_dog.name,my_dog.age)

【运行结果】:

kkll 3

 

我们接下来手动为类中的属性传递值。

【实例】:

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

my_dog = Dog('wawa',5)
print(my_dog.name,my_dog.age)

【运行结果】:

wawa 5

 

2.类的方法

【实例】:

class Dog:
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def bark(self):
        print(f"{self.name} bark !")

my_dog = Dog('wawa',5)
my_dog.bark()

【运行结果】:

wawa bark !

 

3.继承

一个类继承另一个类时,将自动获得另一个类的所有属性和方法。原有的类称为父类,而新类称为子类。子类继承了父类的所有属性和方法,同时还可以定义自己的属性和方法。在创建子类时,父类必须包含在当前文件中,且位于子类前面。

Dog类中的super().__init__()是调用父类的初始化函数。(构造方法?)

【实例】:

class Animal:
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def eat(self):
        print(f"{self.name} can eat.")

class Dog(Animal):
    def __init__(self,name,age):
        super().__init__(name,age)
    
my_dog = Dog('wawa',5)
my_dog.eat()

【运行结果】:

wawa can eat.

 

4.给子类添加属性和方法

为Dog子类添加kind_dog属性和bark方法。

【实例】:

class Dog(Animal):
    def __init__(self,name,age,kind):
        super().__init__(name,age)
        self.kind_dog = kind
    def bark(self):
        print(f"{self.name} can bark!")

 

5.重写方法

重写Animal父类中的eat()方法。

【实例】:

class Animal:
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def eat(self):
        print(f"{self.name} can eat.")

class Dog(Animal):
    def __init__(self,name,age,kind):
        super().__init__(name,age)
    def eat(self):
        print(f"{self.name} can eat quickly!")
    
my_dog = Dog('wawa',5,'泰迪')
my_dog.eat()

【运行结果】:

wawa can eat quickly!

 

o(* ̄▽ ̄*)ブ 感谢观看,希望对你有帮助!

posted @ 2022-10-25 10:45  Mr_宋先生  阅读(20)  评论(0编辑  收藏  举报