python之类与对象

一、概念:

类:类代表了具有相同特征的一类事物(人类)

对象/实例:具体的某一个事物或者是人(具体到某一个人)

实例化:将类变成对象的这么一个过程,即新建一个对象的过程,就是对类的一个实例化过程。(人类是一种生物类型,某个人是实例化人类,也就是某个人是人类的对象)

二、类的表达式:

格式:

class Person:  
    pass

注意:

1、以class开头来定义一个类

2、类名命名规则:可由数字字母下划线组成 不能以数字开头 首字母大写 驼峰命名

3、python3+版本中已经不需要在在类后加上object,那是python2的用法,例如:class Person(object)

三、类属性与类方法: 

python的类里包括类属性和类方法

class Person:   
#类属性
    person_year = 11
#类方法
    def Run(self):
        print("run")

注意:类方法里的self 是固定占坑符号,又代表实例本身,类里面的方法都会有self,实例化对象的时候,对象是谁,self就是谁

四、创建对象:

对象实例化也称为创建对象

格式:实例 = 类名() 是可以调用类里面的任意函数

调用属性: 实例.属性名

调用方法: 实例.方法名()

类属性:类方法可以用类名直接调用,不需要实例化来调用

# 定义一个Person的类
class Person:
    #name为类属性
    name  = "小明"
    def (self):
        print("run")
# 创建一个p对象
p = Person()
print(p.name)  # 调用对象的属性,结果为小明
p.run()  # 调用对象的方法,结果为run

四、类方法分类:

类里面方法是分为三种

1、实例方法: (self) 只能给对象调用,需要穿件对象才能用起来,类直接调用是用不了的

class Person:
    def 实例方法名(self):
        pass
Person().实例方法名()

2、类方法: @classmethod (cls)不用实例来调用方法

类方法是所有实例的共性,是类里面公用的,cls-代表当前类,类方法可以用类名直接调用,不需要实例化来调用

class Person:
    @classmethod
    def 类方法名(cls):
        print(1)
Person.类方法名() # 结果为1

3、静态方法: @staticmethod (普通方法) 没有必然的参数类或者对象关系,只不过它放在类里面,一般给类自己用的,用于类里面的某些方法,提供方法支持

class Person:
    @staticmethod
    def 静态方法名():
        print(1)
    def test(self):
        静态方法名()

五、实例方法/类方法/静态方法的区别:

相同点: 实例方法/类方法/静态方法, 实例和类名都可以直接调用

不同点: 静态方法 和类方法 不可以调用类里面的属性值 如果要参数 需自己传递参数

什么时候去定义静态和类方法: 当你的某个函数与其他的类函数和类属性没有关系

初始化函数使用: 如果某个属性值是多个函数公用的 就可以使用初始化函数 没有return

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值