共有和私有概念

#!/usr/bin/python3
# -*- coding:utf-8 -*-
#Author:qika


#python里面的成员修饰符:======>>>只有两类:共有成员和私有成员

# 原因:有些字段或者类下的函数方法,不想让被外面的人随便看见,
# 那么就可以在前面加上两个下划线,变成私有的字段或者方法,即可!
# 要访问的话,就需要在自己所在的类里面构建一个方法间接的去访问
#--->>注意:如果遇见继承的情况,不能随便间接的访问的,间接是指自己所在类的内部


class Func(object):
    def __init__(self,name,age):
        self.name=name  #这种就是共有的字段
        # self.age=age
        self.__age=age  #这种就是私有的,外部无法直接获取(即,不想让外部直接访问的字段或者方法)

# obj= Func("qika",18)
# print(obj.name)#可正确获取到
# print(obj.__age)#不能获取“私有字段或者方法”,报错:AttributeError: 'Func' object has no attribute 'age'

    def get(self):
        return self.__age  #如上,无法直接获取“私有字段或者方法”,
                            # 方法:间接获取。那么我这个函数方法返回值就返回这个私有字段或者方法

obj= Func("qika",18)
print(obj.get())#通过间接的调用方法获取私有字段或者方法



#备注:
# 通过在方法名前加上双下划线的,或前后都加双下划线的,
# 有很多个,python里面内置了很多个,都是有特殊的修饰含义的

 

posted on 2020-12-26 15:25  QiKa  阅读(178)  评论(0编辑  收藏  举报