欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《零基础小白从入门到实战》之“类的方法和作用”

程序员文章站 2022-06-06 18:33:58
...

方法

放在类里面的函数就叫方法。(method)
方法:代表类或者实例的行为。

实例方法:就是一个对象(个体) 特有的行为。  实例属性
类方法: 整个类具有的行为。
普通方法:调用, 实例方法:  obj.方法()
带有 self 的是实例方法。

类方法:类方法表示

类方法和实例方法:类方法会在方法上面加一个声明 @classmethod

静态方法(static method): 在方法当中,不需要用到对象(self), 又不需要用类(cls)
目的:当你需要把一个普通的函数放在类下面的时候。 方便管理。

例如:

class Car:
    fadongji = True
    wheel = True
    material = ["塑料", "橡胶"]

    def __init__(self, logo, color):
        print("对象产生时进行的初始化工作")
        print("类里面的", id(self))
        self.brand = logo  # brand 属性设置成 logo
        self.color = color

    def drive(self, distance=500):
        """开车"""
        print("{} 开起来非常快, 而且可以续航 {} 公里".format(self, distance))

    @classmethod
    def fly(cls):
        """飞"""
        print("{}正在飞".format(cls))

    @classmethod
    def other_class_method(cls):
        print("other")

    @staticmethod
    def baoyang():
        """和类,和对象没有关系。
        她就不应该被定义成实例方法,
        """
        print("正在保养。。。")




your_car = Car("h", "heise")
your_car.drive()

# 实例可以调用类方法。
your_car.fly()
Car.fly()


# 静态方法怎么调用
Car.baoyang()
your_car.baoyang()

类和对象的作用

类和对象可以帮我们存储各个不同的函数需要用到的共同变量

例如:

name = "single dog"
sexy = "男"
age = 5
class Dog:
    def __init__(self, name, sexy, age):
        self.name = name
        self.gender = sexy
        self.age = age
    def eating(self, food):
        # 吃什么东西
        self.food=food
        print('{} 正在吃狗粮,他的性别是 {}, 年龄是 {}岁,最喜欢的食物是 {}'.format(self.name,self.gender,self.age,self.food))

    def bark(self):
        print('{} 正在叫,显然是饿了。他的性别是 {}, 年龄是 {}岁'.format(self.name,self.gender,self.age))
    def bath(self):
        print('{} 正在洗澡,他的性别是 {}, 年龄是 {}岁'.format(self.name,self.gender,self.age))
single_dog = Dog(name, sexy, age)
single_dog.eating("粑粑")
single_dog.bark()
single_dog.bath()