类和对象(利用函数创造一个类)

一.利用函数创造一个类和各种对象

面向对象设计:将一类具体事物的数据和动作整合到一起,即为面向对象设计

类:把一类事物的相同的特征和动作整合到一起就是类

  类是一个抽象的概念

对象:就是基于类而创建的一个具体的事物(具体存在的)

  也是特征和动作整合到一起

例:学校类

特征:name、addr、type、...

动作:考试,招生,开除

def school(name,addr,type):
    def kaoshi(school):                #全部tab键缩进,让他们变成局部作用域,只有学校才能调用以下的功能
        print("%s学校正在考试"%school["name"])
    def zhaosheng(school):
        print("%s%s学校正在招生" %( school["type"],school["name"]))
    def init(name,addr,type):               #用于初始化一个学校(初始化函数,将特征和动作整合到一起)
        sch = {
            "name": name,
            "addr": addr,
            "type": type,
            "kao_shi": kaoshi,
            "zhao_sheng": zhaosheng
        }
        return sch
    return init(name,addr,type)          #注意,上面定义了一个初始化函数,在这里需要执行一下获得返回值
s1=school("oldboy","shahe","sili")      #定义一个学校的时候,只需要传给他特征就行了
print(s1)                   #此时会出现你自己定义的学校的特征。返回的是动作和特征的整合
print(s1["name"])
s1["zhao_sheng"](s1)        #输出结果  silioldboy学校正在招生
s2=school("qinghua","beijing","gongli")    #又创建了一个类
s2["kao_shi"](s2)

思路:先定义这个类里面共有的动作,再找到这个类共有的特征。

     利用初始化函数将这个类的动作和特征整合在一起,并返回。

     通过函数生成一个对象,对象之间可能有不同的特征,但是都具备相同的动作。    

  

面向对象编程

猜你喜欢

转载自www.cnblogs.com/yxzymz/p/12805733.html