封装

复制代码
# 封装可以保护数据
# 属性和方法前面有双下线,是私有属性,不能在类外部被调用,即使是继承
# 使用“对象._类名__属性或方法名”可以访问但不推荐

class Person:
    __key = 'abcd'                   # 私有静态属性
    def __init__(self, name, pwd):
        self.name = name
        self.__pwd = pwd            # 私有属性
    
    def set_pwd(self, pwd):
        self.__pwd = pwd
        return self.__pwd

    def __get_pwd(self):             # 私有方法
        print(self.__key)
        return self.__pwd          # 调用私有属性

    def login(self):                # 正常的方法调用私有的方法
        return self.__get_pwd()

man = Person('huang', '123')
print(man.login())
print(man._Person__pwd)
复制代码

 

posted @   该搬砖啦  阅读(95)  评论(0编辑  收藏  举报
编辑推荐:
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
阅读排行:
· 【译】我们最喜欢的2024年的 Visual Studio 新功能
· 个人数据保全计划:从印象笔记迁移到joplin
· Vue3.5常用特性整理
· 重拾 SSH:从基础到安全加固
· 并发编程 - 线程同步(一)
点击右上角即可分享
微信分享提示