1.封装的概念
封装表示的是,将现实世界事物的属性和行为,封装到类中,描述为成员变量、成员方法,从而完成程序对现实世界事物的描述。
1.1私有成员
现实事物有不公开的属性和行为(例如手机中的一些权限和信息是不对用户公开的),类中描述的一些信息也需要这个属性,因此有了支持对外隐藏一些信息的属性,叫做私有成员。
类中提供了私有成员的形式来支持。定义私有成员的方式非常简单,格式如下:
私有成员变量
:变量名以__开头
(2个下划线)私有成员方法
:方法名以__开头
(2个下划线)
即可完成私有成员的设置。
注意:
- 私有成员无法被类对象使用
- 类中其他成员可以访问私有成员
私有成员的意义:在类中提供仅供内部使用的属性和方法,而不对外开放(类对象也无法使用)
2.代码示例
"""
演示面向对象封装思想中私有成员的使用
"""
# 定义一个类,内含私有成员变量和私有成员方法
class Phone:
__current_voltage = 1 # 当前电压
def __keep_single_core(self):
print("让cpu单核模式运行")
def call_by_5G(self):
if self.__current_voltage >= 1:
print("5G通话已开启")
else:
self.__keep_single_core()
print("电量不足,无法使用5G通话,并已设置为单核运行进行省电")
phone = Phone()
#phone.__keep_single_core()
# 会报错'Phone' object has no attribute '__keep_single_core'
#print(phone.__current_voltage)
# 会报错'Phone' object has no attribute '__current_voltage'
phone.call_by_5G()