首页 > 其他 > 详细

OOP--封装01

时间:2020-12-16 18:51:08      阅读:34      评论:0      收藏:0      [点我收藏+]

三个层次讲封装:

1.数据层:将一些基础数据类型包装成一种自定义数据类型

2.行为层:开放必要的功能,隐藏不必要的过程,细节

3.设计层:分而治之,变则改之,高内聚,低耦合

class Wife:

  def __init__(self,name,age):

    self.name = name    #类就是数据层次的封装

    self.age = age

  @property #创建property对象,只负责拦截读取操作

  def age(self):

    return self.__age

  @age.setter #只负责拦截写入操作

  def age(self,value):

    if 20<=age<=31:

      self.__age = value

    else:

      raise ValueError("年龄不在要求内")

  @property

  def name(self):#只读取

    return self.__name

w01 = Wife("天霸",20)

w02 = Wife("天兵",10)#报错,不符合20<=age<=31 ==>这就是行为层的封装,隐藏不必要的过程细节。让用户只能使用开发的功能

print(w01.age) ==>20  #该处调用age读取方法

w01.age = 30 #该处调用age的写入方法

设计角度:

1.分而治之:--将一个大的需求分解为许多类,每个类处理一个独立的功能

      --拆分好处:便于分工,便于复用,可扩展性强

2.变则疏之:--变化的地方独立封装,避免影响其他类

3.高内聚:--类中各个方法都在完成一项任务(单一职责的类)

4.低耦合:--类与类的关联性与依赖度要低(每个类独立),让一个类的改变,尽可能小的影响其他类

OOP--封装01

原文:https://www.cnblogs.com/aid20-python/p/14144497.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!