首页 > 编程语言 > 详细

python-面向对象-类

时间:2019-06-24 21:26:20      阅读:102      评论:0      收藏:0      [点我收藏+]

面向对象基础

面向对象编程(抽象)

对象:特征和技能的结合体

面向对象编程:一个个对象进行交互

优点:扩展性非常强

缺点:逻辑非常复杂

类与对象

类(类别):一系列具有相同特征和技能的对象

现实世界中先有对象,后有类

# 定义学生

    # 姓名: 猪瑞星
    # 学号: 222222
    # 学校: oldboy
        # 技能: 选课,三十六变


    # 姓名: 孔悟空
    # 学号: 111111
    # 学校: oldboy
        # 技能: 选课,七十二变

    # 姓名: 雷公
    # 学号: 666666
    # 学校: oldboy
        # 技能: 选课,电闪雷鸣,开车
        
# 定义老师

    # 姓名:tank
    # 学校:oldboy
        # 技能:教课,piao

    # 姓名:nick
    # 学校:oldboy
        # 技能:教课,看书

Python中先有类,再有对象

class 类名(驼峰体):  # 定义类,会直接运行类体代码
    # 定义一系列特征
    # 定义一系列方法
    
对象1 = 类名()  # 实例化出对象

给对象定制独有的特征

class OldBoyStudent:
    school = 'oldboy'
    
    def __init__(self, name ,age):
        self.name = name
        self.age = age

    def choose_course(self):
        print('is choosing course')
        
stu1 = OldBoyStudent('a',1) 
stu1.school

stu2 = OldBoyStudent('b',2) 
stu2.scool

对象的属性查找顺序

class OldBoyStudent:
    school = 'oldboy'
    name = 'c'
    
    def __init__(self, name ,age):
        self.name = name
        self.age = age

    def choose_course(self):
        print('is choosing course')
        
stu1 = OldBoyStudent('a',1) 
stu1.school

stu2 = OldBoyStudent('b',2) 
stu2.scool

先从对象本身查找,然后从类中查找,类中也没有则报错

类与对象的绑定方法

class OldBoyStudent:
    school = 'oldboy'
    
    def __init__(self, name ,age):
        self.name = name
        self.age = age

    def choose_course(self):
        print(id(self))  # 10000
        print(self.school)
        print(f'{self.name} is choosing course')
        
stu1 = OldBoyStudent('a',1) 
stu1.choose_course()  # self是对象本身
print(id(stu1))  # 10000

OldBoyStudent.choose_course(stu1)

类与数据类型

lis = list([1,2,3])
lis2 = list([1,2,3])
lis.append(4)
# list.append(lis,4)

对象的高度整合

对象会有一大堆属性/数据,还会有一大堆方法来操作这些属性,然后对于不同的对象,这些属性又不同.

python-面向对象-类

原文:https://www.cnblogs.com/raynduan/p/11079181.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!