• 类的空间问题


    一 类的空间问题

    1.1何处可以添加对象属性

    class A:
        def __init__(self,name):
            self.name = name
    
        def func(self,sex):
            self.sex = sex
    
    #  类外面可以
    # obj = A('barry')
    # obj.age = 18
    # print(obj.__dict__)
    #   {'name': 'barry', 'age': 18}
    
    #类里面也可以
    obj = A('barry')
    obj.func('男')  #   函数传了参数进去呀
    print(obj.__dict__)
    # {'name': 'barry', 'sex': '男'}
    

    对象的属性不仅可以在 init 里面添加,还可以在类的其他方法或者类的外面添加

    1.2 何处添加类的静态属性

    class A:
        def __init__(self,name):
            self.name = name
        def func(self,sex):
            self.sex = sex
        def func1(self):
            A.bbb = 'ccc'
    
    
    # 类的外部可以添加
    A.aaa = 'taibai'
    print(A.__dict__)
    
    # 类的内部也可以添加
    # A.func1(111)
    # print(A.__dict__)
    

    总结 : 类的属性不仅可以在类的内部添加,还可以在类的外部添加

    1.3 对象如何找到类的属性

    通过之前的学习,实例化一个对象,可以通过点的方式找到类中的属性

    对象查找属性的顺序:

    先从对象空间找——>类空间找——>父类空间找———>

    **类名查找属性的顺序 : **

    先从本类空间找,类名不可能找到对象的属性

    二 : 类与类之间的关系

    在大千世界中,类与类存在以下关系:

    1. 依赖关系
    2. 关联关系
    3. 组合关系 : 给一个对象封装一个属性,属性值是另一个类的对象
    4. 聚合关系
    5. 实现关系
    6. 继承关系(类的三大特性之一 : 继承)

    2.1 依赖关系:将一个类的的类名或者对象传入另一个类的方法中

    首先,写出两个类,一个是大象类,一个是冰箱类

  • 相关阅读:
    HDOJ 2689
    UVALive 3635 Pie 切糕大师 二分
    黑马程序员 Java基础<十八>---> 网路编程
    C# 数据库dataGridView刷新数据和主外键判断
    影视-纪录片:《生死洄游》
    汉语-词语:旅行
    汉语-词语:探险
    风水学:龙脉
    人物-探险家:斯文·赫定
    影视-纪录片:《河西走廊之嘉峪关》
  • 原文地址:https://www.cnblogs.com/hualibokeyuan/p/11330866.html
Copyright © 2020-2023  润新知