访问限制总结:
1.几个总结
开头有双下划线 : 私有变量(外部不可访问)
开头和结尾都有双下划线 : 特殊变量(外部可访问)
开头单下划线 : 视为私有变量(不建议访问)
若要访问,可在class内部单独添加函数
2.错误写法实例:
>>>bart = Student('Bart Simpson',98)
>>>bart.get_name()
'Bart Simpson'
>>>bart.__name ='New Name'# 设置__name变量!
>>>bart.__name
'New Name'
乍一看,外部代码成功设置了__name变量(注意是2个下划线),但实际上这个__name变量和class内部的__name变量不是一个变量!!!!内部的__name变量已经被python解释器自动改成了_student__name,而外部代码给bart新增了一个__name变量!!!
>>>bart.get_name()# get_name()内部返回self.__name
'Bart Simpson'
网友评论