zoukankan      html  css  js  c++  java
  • python3面向对象(3)私有属性和方法以及访问私有属性和方法的方式

    python3中的私有属性和方法是以__两个下划线开头的:

    class Woman(object):        #定义一个woman类      
        def __init__(self,name):
            self.name = name    #公有属性
            self.__age = 22   #私有属性
    
        def __money(self):      #私有方法
            print("哈哈哈,我有很多存款")
    
    obj1 = Woman("红红")
    obj1.name          #可以直接访问
    print(obj1.__age)  #不可以直接访问
    obj1.__money    #不可以直接访问
    

     第一种访问:访问私有属性和方法的方式(在类内,普通方法可以访问私有属性和方法,然后再调用普通方法来访问私有的):

    class Woman(object):
        def __init__(self,name):
            self.name = name
            self.__age = 22
    
        def __money(self):
            print("哈哈哈,我有很多存款")
    
        def func_age(self):    #定义一个普通方法来访问 私有属性
            print("访问到了你的年龄:%s" % self.__age)
    
        def func_money(self):   #定义一个普通方法来访问 私有方法
            self.__money()
    
    obj1 = Woman("红红")
    
    obj1.func_age()
    obj1.func_money()
    

     第二种访问:访问私有属性和方法的方式(通过_类名__私有(属性或方法))

    class Woman(object):
        def __init__(self,name):
            self.name = name
            self.__age = 22
    
        def __money(self):
            print("哈哈哈,我有很多存款")
    
    
    
    obj1 = Woman("红红")
    print(obj1._Woman__age)   #通过_Woman__age
    obj1._Woman__money()   #通过_Woman__money()
    
  • 相关阅读:
    attr方法笔记(反射)
    微信小程序的view标签中text如何居中?
    如何在button里面插入图片?
    html如何实现空格?
    margin-left有效果但是margin-top没有用没有效果?如何解决?
    html里button实现跳转事件
    js 字符串切割
    html获取输入框的值
    Uncaught TypeError: Cannot read property ‘split’ of undefined
    日历实现
  • 原文地址:https://www.cnblogs.com/yan-peng/p/9963169.html
Copyright © 2011-2022 走看看