zoukankan      html  css  js  c++  java
  • 面向对象组合的使用

    # ### 1. 类或对象是否能做字典的key
    """
    class Foo:
        pass
    
    user_info = {
        Foo:1,
        Foo():5
    }
    
    print(user_info)
    """
    # ### 2. 对象中到底有什么?
    
    # class Foo(object):
    #
    #     def __init__(self,age):
    #         self.age = age
    #
    #     def display(self):
    #         print(self.age)
    #
    # data_list = [Foo(8),Foo(9)]
    # for item in data_list:
    #     print(item.age,item.display())
    
    # ### 3.
    
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print('666')
    #
    # # 创建了一个列表,列表中有三个对象(实例)
    # # [ StarkConfig对象(num=1), StarkConfig对象(num=2), RoleConfig对象(num=3) ]
    # config_obj_list = [StarkConfig(1),StarkConfig(2),RoleConfig(3)]
    # for item in config_obj_list:
    #     print(item.num)
    
    # 1 2 3
    
    # ### 4.
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    # class RoleConfig(StarkConfig):
    #     pass
    #
    # # 创建了一个列表,列表中有三个对象(实例)
    # # [ StarkConfig对象(num=1), StarkConfig对象(num=2), RoleConfig对象(num=3) ]
    # config_obj_list = [StarkConfig(1),StarkConfig(2),RoleConfig(3)]
    # for item in config_obj_list:
    #     item.changelist(168)
    #
    
    # #### 5
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    # # 创建了一个列表,列表中有三个对象(实例)
    # # [ StarkConfig对象(num=1), StarkConfig对象(num=2), RoleConfig对象(num=3) ]
    # config_obj_list = [StarkConfig(1),StarkConfig(2),RoleConfig(3)]
    # for item in config_obj_list:
    #     item.changelist(168)
    
    # #### 6
    
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    #     def run(self):
    #         self.changelist(999)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    # config_obj_list = [StarkConfig(1),StarkConfig(2),RoleConfig(3)]
    # config_obj_list[1].run()
    # config_obj_list[2].run() # 666 3
    
    # #### 7
    
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    #     def run(self):
    #         self.changelist(999)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    #
    # class AdminSite(object):
    #     def __init__(self):
    #         self._registry = {}
    #
    #     def register(self,k,v):
    #         self._registry[k] = v
    #
    # site = AdminSite()
    # print(len(site._registry)) # 0
    # site.register('range',666)
    # site.register('shilei',438)
    # print(len(site._registry)) # 2
    #
    # site.register('lyd',StarkConfig(19))
    # site.register('yjl',StarkConfig(20))
    # site.register('fgz',RoleConfig(33))
    #
    # print(len(site._registry)) # 5
    
    
    
    # #### 8
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    #     def run(self):
    #         self.changelist(999)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    # class AdminSite(object):
    #     def __init__(self):
    #         self._registry = {}
    #
    #     def register(self,k,v):
    #         self._registry[k] = v
    #
    # site = AdminSite()
    # site.register('lyd',StarkConfig(19))
    # site.register('yjl',StarkConfig(20))
    # site.register('fgz',RoleConfig(33))
    # print(len(site._registry)) # 3
    #
    # for k,row in site._registry.items():
    #     row.changelist(5)
    
    
    ### 9
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    #     def run(self):
    #         self.changelist(999)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    # class AdminSite(object):
    #     def __init__(self):
    #         self._registry = {}
    #
    #     def register(self,k,v):
    #         self._registry[k] = v
    #
    # site = AdminSite()
    # site.register('lyd',StarkConfig(19))
    # site.register('yjl',StarkConfig(20))
    # site.register('fgz',RoleConfig(33))
    # print(len(site._registry)) # 3
    #
    # for k,row in site._registry.items():
    #     row.run()
    
    ## 10
    #
    # class UserInfo(object):
    #     pass
    #
    # class Department(object):
    #     pass
    #
    # class StarkConfig(object):
    #
    #     def __init__(self,num):
    #         self.num = num
    #
    #     def changelist(self,request):
    #         print(self.num,request)
    #
    #     def run(self):
    #         self.changelist(999)
    #
    # class RoleConfig(StarkConfig):
    #
    #     def changelist(self,request):
    #         print(666,self.num)
    #
    # class AdminSite(object):
    #     def __init__(self):
    #         self._registry = {}
    #
    #     def register(self,k,v):
    #         self._registry[k] = v(k)
    #
    # site = AdminSite()
    # site.register(UserInfo,StarkConfig)
    # site.register(Department,StarkConfig)
    # print(len(site._registry)) # 3
    # for k,row in site._registry.items():
    #     row.run()
    
    
    # 总结:
    """
    1. 对象中封装了什么?
    2. self到底是谁?
    """
  • 相关阅读:
    Go语言基础之包
    Go语言基础之结构体
    Go语言基础之函数
    Go语言基础之map
    Go语言基础之指针
    Go语言基础之切片
    Go语言基础之数组
    02-Spring配置文件加载
    01-Spring概述(总览)
    将博客搬至CSDN
  • 原文地址:https://www.cnblogs.com/zzy7372/p/9554807.html
Copyright © 2011-2022 走看看