python 面向对象编程

来源:互联网 发布:mac phpstorm debug 编辑:程序博客网 时间:2024/06/09 19:37
#类:是对事物的抽象:如,汽车模型,类名的首字母要大写
#对象:是类的一个实例,如:客车,轿车
#类把需要的变量和函数组合在一起,这种包含也称为“封装”
class 类名:
      成员变量    #属性
      成员函数    #方法
class Ren(object):
name = '人'
high = '一人高'
wight = '一人重' #上面和这个都是公有属性
__wife = '老婆' #私有属性
def run(self): #self代表这个它自己这个类本身
   study = '学习' #此处不是类的公有属性
   print(self.name) #这样可以拿到类的公有属性
   print('跑步')


if __name__ == '__main__':#如果我们是直接执行某个.py文件的时候,该文件中那么”__name__ == '__main__'“是True,但是我们如果从另外一个.py文件通过import导入该文件的时候,这时__name__的值就是我们这个py文件的名字而不是__main__。
    zhangsan = Ren() #创建Ren的实例化对象,实例化对象也具有属性和方法
    zhangsan.run()
    print(zhangsan.name) #输出为‘人’
    zhangsan.name = '张三'
    print(zhangsan.name) #此时zhangsan这个实力的name属性改变为‘张三’
    zhangsan.money = '很多钱' #还可以给zhangsan这个实例对象添加属性
    print(zhangsan.money) #输出为‘张三’
    print(zhangsan._Ren__wife) #通过这样就可以访问类内部的私有属性
'''属性分为共有属性和私有属性
共有属性是指:可以在类中和类外调用的属性
私有属性是指:不能被类以外的函数调用,只能在类的内部,通过类的方法访问
私有属性的定义方式:
以“__”双下划线开始的成员变量就是私有属性,否则就是共有属性
内置属性:不需要定义,由系统在定义类的时候默认添加的,由前后两个下划线构成
私有属性在测试的时候可以通过:对象名._类名__属性,来访问'''
print(Ren.name) #也可以通过这样来访问类的属性
#print(Ren.__wife)#type object 'Ren' has no attribute '__wife'不能这样访问类的私有属性
原创粉丝点击