day09:Python中的类

1.定义类的方式

:pass是占位符(暂且未想到写什么)
在这里插入图片描述
具体代码如下:

# 类的组成以及定义:
class Student():
    jk = "Niuma"  # 类属性,类似于java类中的 static String name
    op = 100  # 类属性:类似于java当中的 static int age

    #  相当于java当中的有参构造方法,参数即是实例变量
    def __init__(self, name, age):
        self.name = name
        self.age = age
    # 实例方法,用实例对象进行调用
    def eat(self):
        print("同学在吃饭")
    # 类方法,能够通过实例对象和类对象去访问
    @classmethod
    def run(cls):
        print("同学正在跑")
    # 静态方法,能够通过实例对象和类对象去访问
    @staticmethod
    def catch():
        print("同学抓住了坤哥")

2.对于类的各个组成的用法总结(便捷必看)

以下总结内容不能只看,需要敲代码进行实际检测,才会印象深刻,以下内容仅为个人理解:
1.类属性:类的实例对象也具有该属性,在同一程序中,使用类.类属性这样的方式修改,那么该语句下面所实例化的所有对象之后的类属性都为该修改后的值。

from PyClass.test01 import Student

stu01 = Student("name", 12)
print(stu01.jk)
print(stu01.op)
Student.jk = "hhhhhhhh"  # 修改后类属性之后
Student.op = "NNNNNNNN" 
print(stu01.jk)
print(stu01.op)

stu02 = Student("CYH", 2222)
print(stu02.jk)
print(stu02.op)

2.实例方法:只能通过类的实例对象进行调用
3.实例属性(也就是java当中的成员变量,一般都是中__init__(self,…)方法中定义的变量:
例如:init(self,name,age)
那么这个当这个类实例化对象的时候,就需要传入两个参数,对name,age进行赋值,这两个属性就是这个类实例的属性,只可以用实例进行调用和修改,相当于(java当中的有参构造)

3.静态方法:区别于类方法的第一个参数没有(cls)
4.类方法:第一个参数名字一般为:cls,可以使用类对象和实例对象进行调用

以上具体观点的验证代码如下:

from PyClass.test01 import Student

# 实例化对象,并传入参数赋值(相当于java中的有参构造)
student01 = Student("CYH", 23)

# 输出实例化对象有的实例属性
print(student01.name)
print(student01.age)

# 使用实例化对象调用类属性(Student)
print(student01.jk)
print(student01.op)

# 使用实例对象调用实例方法
student01.eat()

# 使用实例对象调用类方法
student01.run()

# 使用实例对象调用静态方法
student01.catch()

# 使用类对象调用类属性
print(Student.jk)
print(Student.op)

# 使用类对象调用类方法
Student.run()

# 使用类对象调用静态方法
Student.catch()

3.动态绑定属性和方法

在类进行实例化之后,可以单独的为实例化对象进行动态的绑定属性和方法。
1.动态绑定属性:
基本语法:实例对象.新属性=属性值
2.动态绑定方法:
基本语法: 实例对象.方法名=定义的函数
代码如下:

#  对类的实例对象动态绑定属性和方法
from PyClass.test01 import Student

stu01 = Student("CYH", 20)

stu01.addr = "beijing"
print(stu01.addr)


def myrun():
    print("CYH正在跑")


stu01.myrun = myrun()

stu01.myrun

运行结果如下:
在这里插入图片描述
4.类的继承

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值