080 对象的绑定方法

Posted xichenhome

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了080 对象的绑定方法相关的知识,希望对你有一定的参考价值。

一、对象的绑定方法

  • 类名称空间中定义的数据属性和函数属性都是共享给所有对象用的
  • 对象名称空间中定义的只有数据属性,而且是对象所独有的数据属性
class Student1:
    school = 'xiwangzhongxue'

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

    def choice(self):
        print(f'self.name选课...')

    def study(self):
        print('学习....')

二、类使用对象绑定对象

class Student1:
    school = 'xiwangzhongxue'

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

    def choice(self):
        print(f'self.name选课...')

    def study(self):
        print('学习....')
        
        
stu1 = Student('小明', 18)
stu2 = Student('小红', 17)


print(stu1.name)
print(stu1.school)

小明

xiwangzhongxue

  • 类中定义的函数是类的函数属性,类可以使用,但使用的就是一个普通的函数而已,意味着需要完全遵循函数的参数规则,该传几个值就传几个
print(Student.choice(123))

‘int‘ object has no attribute ‘name‘

三、对象使用对象的绑定方法

  • 定义在类内部的方法
  • 如果类来调用:就是一个普通函数,有几个参数就需要传几个参数
  • 对象来调用,它叫对象的绑定方法,第一个参数不需要传,自动传入当前调用它的对象
class Student1:
    school = 'xiwangzhongxue'

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

    def choice(self):
        print(f'self.name选课...')


    def study(self):
        print('学习....')


stu1 = Student1('小明',18)
stu1.choice()

stu2 = Student1('小红',20)
stu2.choice()

小明选课...
小红选课...

以上是关于080 对象的绑定方法的主要内容,如果未能解决你的问题,请参考以下文章

Python类和对象的绑定方法及非绑定方法

面向对象——绑定方法和非绑定方法

对象的绑定方法

2020Python修炼记面向对象编程——绑定方法与非绑定方法

python-面向对象(绑定方法与非绑定方法)

面向对象 --- 类的绑定方法,面向对象高阶