zoukankan      html  css  js  c++  java
  • 私有化

    # 私有化
    # 封装的一个概念:1.私有化你的属性部分 2.定义公有的set和get方法
    # __属性就是将一个属性私有化,私:专属于,有:出了这个结构体,谁也访问不了。只限制于类中


    class Student:
    # __age = 18 # 类属性私有化

    def __init__(self, name, age):
    self.__name = name
    self.__age = age
    self.__socre = 59

    # get:是为了取值

    # 定义成函数还有一个好处就是可以在函数里面加各种各样的判断,变成了更加灵活
    def getAge(self):
    return self.__age

    # set:是为了赋值

    def setAge(self, age):
    self.__age = age

    def __str__(self):
    return '姓名是:{}年龄是:{}考试分数是:{}'.format(str(self.__age), self.__name, self.__socre)


    a = Student(18, 'zzh')
    print(a)
    a.setAge(200)
    print(a)
    print(a.getAge())
    # 需要定义一个公有的set和get,不然值无法改变了

    # 在开发中,我们经常看到的一些私有化的处理
    # 装饰器来完成 @property


    class Student:
    def __init__(self, name, age):
    self.__name = name
    self.__age = age

    @property
    def age1(self):
    return self.__age
    #这就好比先要有set再有get一样
    @age1.setter
    def age1(self, age):
    self.__age = age

    # def setAge(self, age):
    # if 0 < age < 100:
    # self.__age = age
    # else:
    # print('年龄不正确')
    #
    # def getAge(self):
    # return self.__age

    def __str__(self):
    return '姓名是{}年龄是{}'.format(self.__name, self.__age)


    a = Student('zzh', 55)
    a.age1 = 50
    print(a.age1)
    # 私有化赋值
    # a.setAge(30)
    # print(a.getAge())
    # 如何让外界在使用的时候和原来是一样的 这边就需要用到装饰器
  • 相关阅读:
    shiro实战系列(三)之架构
    shiro实战系列(二)之入门实战续
    ShopNC B2B2C多用户商城2014商业版,带微商城
    开源 SHOPNC B2B2C结算营运版 wap IM客服 API 手机app 短信通知
    PHP5.3下加速器ZendGuardLoader安装 (LNMP/lnmpa)
    XAMPP + Xdebug+Zend Studio
    magento 12 配置安装教程
    C#控件一览表
    GetXamarin.xambe
    新建电子监控点与测速点
  • 原文地址:https://www.cnblogs.com/SmartCat994/p/12306937.html
Copyright © 2011-2022 走看看