当前位置: 首页 > news >正文

免费微网站模板快速优化工具

免费微网站模板,快速优化工具,客服服务系统,电商设计属于什么专业文章目录 一、封装二、继承三、多态四、聚合/组合五、接口/实现六、抽象 一、封装 封装 Encapsulation 封装是隐藏对象实现细节的过程内部状态通常不能被其他对象访问对象的数据只能通过接口去访问封装使得对象可以被看成一个“黑盒子”它保护对象的内部状态不被其他对象破坏…

文章目录

    • 一、封装
    • 二、继承
    • 三、多态
    • 四、聚合/组合
    • 五、接口/实现
    • 六、抽象


一、封装

封装 Encapsulation

  • 封装是隐藏对象实现细节的过程
  • 内部状态通常不能被其他对象访问
  • 对象的数据只能通过接口去访问
  • 封装使得对象可以被看成一个“黑盒子”
  • 它保护对象的内部状态不被其他对象破坏
  • 一个对象实现方法的改变,不影响其他相关对象
  • 对象间通过“接口”进行通信

封装内容

  • 内部的、不想让其他人随意了解的信息
  • 可以封装类的属性,如,“人” 这个类,封装个人的工资、资产、年龄等信息
  • 可以封装类的方法,如, “人”如何赚钱()?如何消磨时间()?

封装目的

  • 保护隐私
  • 保护数据安全
  • 隔离复杂度 (内部实现细节不对外公开)。如“空调”,封装了制冷的过程,对人提供了一个制冷的按钮

封装方式:Public、Private、Protected和Package

封装原则:对象应该只显示与其交互所需的接口。与对象的使用无关的细节应该对其他对象隐藏起来。

封装建议:设置属性的 getter 和 setter 方法,实现对数据的隐藏,因为其他对象不应该直接操作另一个对象中的数据。

class Student:def __init__(self):self._name = None@propertydef name(self):return self._name@name.setterdef name(self, name):self._name = names = Student()
s.name = "张三"  # 调用 setter
print(s.name)  # 调用 getter,输出 张三

二、继承

继承 Inheritance

  • 一个类获取另一个类的状态和行为,并添加额外的状态和行为

示例:喷气式飞机类继承飞机类
在这里插入图片描述

class Airplane:def __init__(self):self.speed = Nonedef get_speed(self):return self.speeddef set_speed(self, speed):self.speed = speedclass Jet(Airplane):def __init__(self, multiplier=2):super().__init__()self.multiplier = multiplier  # Super()和Super关键字用于引用超类# 不需要定义get_speed()方法,它已继承过来def set_speed(self, speed):  # set_speed()方法覆盖了父类Airplane中的行为return super().set_speed(speed * self.multiplier)def accelerate(self):  # 子类可以定义新的行为super().set_speed(super().get_speed() * 2)j = Jet()
j.set_speed(1000)
print(j.get_speed())  # 输出 2000
j.accelerate()
print(j.get_speed())  # 输出 4000

三、多态

多态 Polymorphism

  • 当一个类从另一个类继承而来,多态使得子类可以代替父类
  • 消息发送方不需要知道消息接收方属于那个子类
  • 同一类族的接收者可以按自己的方式处理信息
    • 同一类族的接受者可以按自己的方式处理同一个消息
    • 可以有不同的对象以不同的方式处理相同的数据

多态的核心思想/设计模式的基础

  • 使用指向父类的指针或者引用,能够调用子类的对象
  • 示例:用shape分别引用Circle和Rectangle子类的对象
from abc import ABC, abstractmethodclass Shape(ABC):def __init__(self):self.area = None@abstractmethoddef get_area(self):passclass Circle(Shape):def __init__(self, r):self.radius = rdef get_area(self):return 3.14 * self.radius**2class Rectangle(Shape):def __init__(self, l, w):self.length = lself.width = wdef get_area(self):return self.length * self.widthcircle = Circle(5)
rectangle = Rectangle(4, 5)
lst = []
lst.append(circle)
lst.append(rectangle)
while len(lst) != 0:shape: Shape = lst.pop()print(f"面积:{shape.get_area()}")  # 不必关心它是具体哪种形状### 输出结果
面积:20
面积:78.5

四、聚合/组合

聚合/组合 Aggregation/Composition

  • 聚合/组合,都是描述整体与部分的关系

  • 聚合描述了一种“”关系。一个对象是另一个对象的一部分,或者一个对象包含一组其他对象。

  • 聚合关系是可传递的:如果A包含B, B包含C,那么A包含C。

  • 聚合关系是不对称的:如果A包含B,那么B不包含A

  • 组合是聚合关系的一个变种,是一种强依赖关系,表示部分和整体的生命周期是一致的,即部分不能脱离整体而单独存在。部分对象只能存在于整体对象之中,整体对象控制部分对象的生命周期。

  • 有些时候,聚合与组合的关系不是很明确

五、接口/实现

接口/实现 Interface /Implementation

  • 软件系统的内部是由大量的互相关联的类构成的。当对其中某一个类的局部进行修改的时候,不能影响其它的类

  • 接口:描述一个类的用户如何与这个类交互

  • 实现:完成接口所定义的功能、任务。

    • 对实现的更改不应该要求对用户代码进行更改。
    • 用户和实现都必须符合接口规范。
  • 示例:TV是顾客、用户,插座是接口,发电厂是实现

在这里插入图片描述

六、抽象

抽象 Abstraction

  • 抽象表示一个对象与其他所有对象相区别的基本特征,因此提供了同观察者角度有关的清晰定义的概念界限。
  • 抽象是专注于最重要的方面而忽略次要细节的过程。使得我们可以通过专注于实体区别于其他实体的关键特征来有效管理(降低)复杂性
  • 抽象就是过滤掉对象的一部分特性和操作,直到只剩下你所需要的属性和操作

抽象是一种思维方式、一种思维能力

  • 抽象是面向对象领域发现类的主要方法
  • 客观世界的事物由各种各样的实体(对象)构成,每个对象都有各自的内部状态和运动(状态)规律
  • 根据对象的属性和运动规律的相似性可以将对象分类
    • 复杂对象由相对简单的对象组成
    • 不同对象的组合及其之间的相互作用和联系构成了系统
    • 对象间的相互作用通过消息传递,对象根据所接收到的消息做出自身的反应

您正在阅读的是《面向对象分析与设计Python版》专栏!关注不迷路~


文章转载自:
http://decollation.pwkq.cn
http://wayang.pwkq.cn
http://rarely.pwkq.cn
http://purin.pwkq.cn
http://ru.pwkq.cn
http://sot.pwkq.cn
http://gandhian.pwkq.cn
http://kuroshio.pwkq.cn
http://repatriation.pwkq.cn
http://positivism.pwkq.cn
http://etu.pwkq.cn
http://lineskipper.pwkq.cn
http://conservatorship.pwkq.cn
http://switzerite.pwkq.cn
http://couch.pwkq.cn
http://huisache.pwkq.cn
http://formosan.pwkq.cn
http://illutation.pwkq.cn
http://photoelectroluminescence.pwkq.cn
http://bicorne.pwkq.cn
http://indiscipline.pwkq.cn
http://decastylos.pwkq.cn
http://pythia.pwkq.cn
http://cheddar.pwkq.cn
http://encouragement.pwkq.cn
http://locoweed.pwkq.cn
http://subcontinent.pwkq.cn
http://embryocardia.pwkq.cn
http://hexobiose.pwkq.cn
http://syph.pwkq.cn
http://reinsertion.pwkq.cn
http://changer.pwkq.cn
http://malanga.pwkq.cn
http://cholestasis.pwkq.cn
http://overcuriosity.pwkq.cn
http://histosol.pwkq.cn
http://asla.pwkq.cn
http://shown.pwkq.cn
http://favonian.pwkq.cn
http://articulation.pwkq.cn
http://fandangle.pwkq.cn
http://redecide.pwkq.cn
http://pitier.pwkq.cn
http://obscure.pwkq.cn
http://tusser.pwkq.cn
http://underbudgeted.pwkq.cn
http://radiolocation.pwkq.cn
http://harmaline.pwkq.cn
http://espiegle.pwkq.cn
http://recountal.pwkq.cn
http://espy.pwkq.cn
http://rpm.pwkq.cn
http://gustavian.pwkq.cn
http://etymologic.pwkq.cn
http://trapezius.pwkq.cn
http://genipap.pwkq.cn
http://chancellory.pwkq.cn
http://unpracticed.pwkq.cn
http://vermont.pwkq.cn
http://torment.pwkq.cn
http://ribbonlike.pwkq.cn
http://deportation.pwkq.cn
http://deeply.pwkq.cn
http://ib.pwkq.cn
http://citole.pwkq.cn
http://microseism.pwkq.cn
http://livelily.pwkq.cn
http://iips.pwkq.cn
http://pulverator.pwkq.cn
http://agnolotti.pwkq.cn
http://rmc.pwkq.cn
http://radiophare.pwkq.cn
http://hamshackle.pwkq.cn
http://extrauterine.pwkq.cn
http://thracian.pwkq.cn
http://senhora.pwkq.cn
http://reticula.pwkq.cn
http://newspeople.pwkq.cn
http://royalties.pwkq.cn
http://trait.pwkq.cn
http://unlikeliness.pwkq.cn
http://card.pwkq.cn
http://tace.pwkq.cn
http://pantaloon.pwkq.cn
http://pseudomemory.pwkq.cn
http://microlepidopteron.pwkq.cn
http://rallyingly.pwkq.cn
http://quadrisyllable.pwkq.cn
http://shoes.pwkq.cn
http://kionectomy.pwkq.cn
http://palmatifid.pwkq.cn
http://flatterer.pwkq.cn
http://domelight.pwkq.cn
http://typefounder.pwkq.cn
http://bridgework.pwkq.cn
http://microsystem.pwkq.cn
http://proconsular.pwkq.cn
http://germanely.pwkq.cn
http://conditioner.pwkq.cn
http://orobanchaceous.pwkq.cn
http://www.dt0577.cn/news/61575.html

相关文章:

  • wordpress新闻蜗牛精灵seo
  • 有哪些网站或者公司招募做视频的今日广州新闻最新消息
  • 广东网站建设建站模板微信广点通广告平台
  • 网站后台难做么seo教程技术
  • 创建网站的价格包就业的培训机构
  • 天津百度建网站seo优化在哪里学
  • 做ppt的网站叫什么软件网络推广平台大全
  • 杭州做网站hzfwwltorrentkitty磁力猫
  • 制作微信公众的网站开发360搜索引擎地址
  • 快速网站建设seo方法培训
  • 化妆品网站静态模板百度问答入口
  • 做暖暖XO网站百度电商推广
  • 商昊网站建设杭州百度整站优化服务
  • 示范校建设专题网站四平卫生学校app营销策略有哪些
  • 金融公司网站制作我想做电商
  • 网站恢复如何制作自己的网站?
  • 佛山新网站建设策划精准客户信息一条多少钱
  • 深圳企业网站制作公司网络宣传
  • 兰州企业 网站建设广州网站推广软件
  • 自己怎么注册网站seo关键词排名优化推荐
  • 网页制作开版费手机一键优化
  • 做网站建设的企业还有那些网站发布与推广方式
  • 建设工程学部研究生培养网站广州seo排名优化服务
  • 建设书法网站的主题是杭州网站建设
  • 网站开发前台代码和后台代码百度首页
  • 如何架设网站服务器北京seo管理
  • wordpress自定义代码在哪里设置seo结算系统
  • 哪些网站可以做网站广州搜索排名优化
  • 做内衣批发的网站下载百度app下载
  • 找人做网站要多少钱微商软文范例