zoukankan      html  css  js  c++  java
  • 共有和私有概念

    #!/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里面内置了很多个,都是有特殊的修饰含义的
  • 相关阅读:
    volatile 和 mutable 关键字
    字符串第一个只出现一次的字符
    学一下HDFS,很不错(大数据技术原理及应用)
    把数组排成最小的数
    求第K大的数字
    数组中超过一半的数字
    打印字符的任意排列
    实时推荐系统架构
    带有任意指向指针的链表进行复制
    surfaceflinger中各个layer的排序
  • 原文地址:https://www.cnblogs.com/QiKa/p/14192982.html
Copyright © 2011-2022 走看看