面向对象初识

1:对象:

  1.函数封装一个功能,而面向对象封装多个相关的功能

  2.面向对象抽象,他是一种思想,站在上帝的角度去理解他

  3.程序可扩展,面向对象都是一个个独立的,存在耦合性以及差异性

  4.类:具有相同属性或者功能的一类实物

  5.对象是类的具体体现

class A:
    name = '黎明' # 静态属性,静态变量,静态字段
    
    def num(self): # 动态属性,函数,方法
        pass

  

class Human:
    def __init__(self): #特殊方法
        pass
    def name(self):
        pass
    def work(self):
        pass
    def run(self):
        pass

2:类,一个公共框架,一个公共模型

  1:查看类中的所有属性及方法

print(People.__dict__)
print(People.__dict__['walk ']) 

  2:增删改查类中某个,某些属性,使用万能的'.'

class People:
    walk = '步行'
    run = '跑步'
    work ='工作'
    def __init__(self,name1,age,sex):
        self.a = name1
        self.b =age
        self.c = sex
    def study(self):
        print('天天向上')
obj = People('李白',500,'男')
print(obj)
print(obj.a)

print(People.__dict__)
print(People.__dict__['walk ']) 
people.name ='姓名' print(People.__dict__)
print(People.name) people.run = '快跑啊'
print(People.run) del People.walk

  3:操作方法一般不通过类名操作

 Person.__dict__['work'](111) 不建议通过__dict__执行方法

 3.对象实例化:

    1.对象为什么能调用类中的属性与方法而且只是调用,不能改变

    out.run 先从自己空间去找,没有此属性他会通过类对象指针从类去找,类中找不到,会从父类中找

    2.类不能调用对象的属性

    3.对象与对象之间不能互相调用

    4.对象的增删改查

class People:
    work = '222'
    run = '233'
    play = '333'
    def __init__(self,name,age,sex):
        self.name = name
        self.age = age
        self.sex = sex
    def store(self):
        self.goods = 'jhdj'
    def num(self):
        pass
out = People('黎明',100,'男')
print(out.__dict__)
print(out.run)
out.store()
print(out.goods)
del out.age
out.sex = '女'
out.run = '好苦啊'

 

原文地址:https://www.cnblogs.com/lijinming110/p/9527046.html