Python基础学习——类与对象2

class BoyFriend:
    # 类属性
    weight=140
    money="500万"
    def __init__(self,name,height):#初始化函数(实例方法)
        self.name=name
        self.height=height
    # 类方法/函数 【自动给补齐了一个self  self是实例本身 固定的占位符】
    def cooking(self):#会做饭   #实例方法
        print(self.name+"会做饭",self.height)
        
    @classmethod  #类方法
    def swimming(cls): #cls 类本身
        print("会有赢")

    @staticmethod  #静态方法
    def sing():
        print("唱歌")

一、类里面的方法分为三种:
1、实例方法:函数中第一个参数是self,意味着这个方法只能实例调用

BoyFriend().earn()  #实例方法的调用  隐式的传递  需要先创建实例
BoyFriend.earn("cd")  #显示的传递

2、类方法:@classmethod

BoyFriend.swimming()  #类方法的调用  创不创建实例都可以调用
BoyFriend().swimming()  #实例和类名都可以调用

3、 静态方法:@staticmethod #实例和类名都可以调用

 BoyFriend.sing()
 BoyFriend().sing()

二、三种方法的区别:
1、相同点:实例方法(self)、类方法(cls)、静态方法(普通方法):实例和类名都可以直接调用
2、不同点:静态方法和类方法不可以调用类里面的属性值,如果要参数,请自己传递参数
3、什么时候去定义为静态方法和类方法:当你的某个函数与其它的类函数、类属性没有关系时,就可以定义为静态方法或者类方法

三、初始化函数 def init(self) 【如果某个属性值是多个函数共用的,就可以用初始化函数】

 b1=BoyFriend("哈哈","110")
 b1.cooking()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值