Python面向对象之私有化属性

本文探讨Python面向对象编程中的私有化属性,通过装饰器实现封装,防止外部直接修改对象的私有属性。讲解了私有化的好处,如保护数据不被随意修改,并提供安全的设置和获取私有属性的方法。此外,还涉及继承的相关案例和应用。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本文主要介绍私有化的属性


提示:以下是本篇文章正文内容,下面案例可供参考

一、什么是私有化?

#私有化
#封装 1.私有化属性 2.公有set和get方法
#__属性 就是将属性私有化,访问的空间仅仅限于类中
‘’’
好处:
1.隐藏属性不被外界随意修改
2.也可以修改:通过函数
def setXXX(self,xxx):
3.选择修改的内容
if 条件 是否符合条件
else:
不赋值
3.如果想获取具体的某一个属性
def getxxx(self):
:return self._xxx

‘’’

class Student:
     #__age= 18 #类属性
    def __init__(self,name,age):
        self.__name=name
        self.__age=age
        self.__score= 59
    #定义公有的set和get方法
     #set是为了赋值
    def setAge(self,age):
        self.__age=age
        if age>0 and age <=120:
            self.__age=age
        else:
            print('年龄不再规定的范围内')

    def setName(self,name):
        if len(name)==6:
            self.__name=name
        else:
            print('名字不是六位')


    #get是为了取值

    def getAge(self):
         return self.__age
    def getName(self):
         return self.__name


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

yupeng=Student('yupeng',18)
print(yupeng)
yupeng.setAge(20)
yupeng.setName('yupenga')
age=yupeng.getAge()
print(age)
print(yupeng)


feifei=Student('feifei',80)
print(feifei)


# yupeng.age=21
# yupeng.__score=95
# print(yupeng)

二、私有化的处理-装饰器

#在开发中看到一些私有化处理:装饰器

class Student:
    # __age= 18 #类属性
    def __init__(self, name, age<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值