zoukankan      html  css  js  c++  java
  • 类中变量私有化和调用:__x和getx/setx或者property

    __xx:双前置下划线,子类不可继承属性、方法,父类私有。

    详见:https://www.cnblogs.com/andy9468/p/8299448.html

    例子1:隐藏数据:私有化后,用get和set方法

     1 class MoneyClass(object):
     2     def __init__(self):
     3         self.__money = 0
     4 
     5     def get_money(self):
     6         return self.__money
     7 
     8     def set_money(self, value):
     9         if isinstance(value, int):
    10             self.__money = value
    11         else:
    12             print("error:不是整型数字")
    13 
    14 
    15 m1 = MoneyClass()
    16 print(m1.get_money())
    17 m1.set_money(50)
    18 print(m1.get_money())
    View Code

    输出:

    0

    50

    例子2:property属性:自动调用get、set方法

     1 class MoneyClass(object):
     2     def __init__(self):
     3         self.__money = 0
     4 
     5     def get_money(self):
     6         return self.__money
     7 
     8     def set_money(self, value):
     9         if isinstance(value, int):
    10             self.__money = value
    11         else:
    12             print("error:不是整型数字")
    13 
    14     getsetmoney = property(get_money, set_money)
    15 
    16 
    17 m1 = MoneyClass()
    18 print(m1.getsetmoney)
    19 m1.getsetmoney = 800
    20 print(m1.getsetmoney)
    View Code

     输出:

    0

    800

    例子3:property装饰器:自动调用get、set方法

     1 class MoneyClass(object):
     2     def __init__(self):
     3         self.__money = 0
     4 
     5     @property
     6     def getsetmoney(self):
     7         return self.__money
     8 
     9     @getsetmoney.setter
    10     def getsetmoney(self, value):
    11         if isinstance(value, int):
    12             self.__money = value
    13         else:
    14             print("error:不是整型数字")
    15 
    16 
    17 m1 = MoneyClass()
    18 print(m1.getsetmoney)
    19 m1.getsetmoney = 1000
    20 print(m1.getsetmoney)
    View Code

    输出:

    0

    1000

  • 相关阅读:
    根据数据库表字段动态生成选择画面
    ABAP中字符串处理方法小结(二)
    如何获取汉字字符串长度
    如何强制分页-[NEW-PAGE]
    如何设置输出颜色-[FORMAT..COLOR..]
    ◆◆0如何取得字符串最后一位
    VALSE2019
    pycharm使用总结
    生活经验
    爱情存在吗-3
  • 原文地址:https://www.cnblogs.com/andy9468/p/11138352.html
Copyright © 2011-2022 走看看