OOP基础概念解析

基本概念:
  • OOD: Object-Oriented Design

  • CoC:Convention over Configuration

  • 抽象类和接口区别:
    抽象类可以包含具体方法的实现,而接口只能包含方法的声明

  • 多重继承:
    一个类同时继承多个父类

  • 组合:
    一个类包含另一个类的对象作为自己的成员变量

    特点:表示一种强依赖的关系,对象之间的关系是“包含-被包含”的关系,被包含对象不能离开包含对象而单独存在

  • 聚合:
    特点:表示一和弱依赖的关系,对象之间的关系是整体-部分”的关系,部分不能离开整体而存在

  • 依赖:
    特点:表示一种弱依赖的关系,对象之间的关系是“包含-被包含”的关系,被包含对象可以离开包含对象而单独存在

  • 重载:
    在一个类中定义多个同名的方法,但参数列表不同(答案)/在一个类中定义多个同名的方法,但访问修饰符不同(实际)

  • 重写:
    在子类中实现一个和父类同名、参数列表相同、返回值类型相同的方法

  • 封装:
    将数据和方法绑定在一起,形成一个独立的、封闭的整体,对外只暴露有限的接口

    作用:隐藏对象的实现细节,只暴露必要的接口

    提高:安全性/可维护性/可读性 代码复用性

  • 继承:
    子类继承父类的属性和方法,并可以在此基础上添加新的属性和方法

    作用:实现代码的重用

    提高:代码复用性/安全性/可维护性 提高可读性

  • 多态:
    同一种类型的对象,可以在不同的场合下表现出不同的行为

    作用:提高程序的灵活性和可扩展性


设计模式
  • 工厂:
    通过一个共同的接口来创建一组相关或依赖对象的实例

  • 抽象工厂:
    用于创建一组相关或相互依赖的对象

  • 单例:
    保证一个类只有一个实例,并提供一个全局访问点

  • 代理:
    为一个对象提供一个代理,以控制对这个对象的访问

    可以用于实现对象的延迟初始化

    访问控制

  • 装饰器:
    动态地给一个对象添加一些额外的职责

    可以在不改变对象结构的前提下,动态地添加对象的职责

    将对象分为两部分核心对象和装饰器对象,以动态地给一个对象添加一些额外的职责

  • 观察者:
    定义对象间的一种一对多的依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新

    用于实现对象的回调机制

    异步处理

  • 策略:
    定义一系列的算法,将每一个算法封装起来,并使它们可以相互替换

    封装一系列的算法对外暴露统一的接口,让算法的选择与算法的实现分离开来

  • 模板方法:
    定义一个操作中的算法的骨架,而将一些步骤延迟到子类中

    将一个算法的骨架和具体的步骤实现分离,使得子类可以在不改变算法结构的情况下重新定义算法中的某些步骤

    用于定义一个操作中的算法的骨架,而将一些步骤延迟到子类中

  • 迭代器:
    提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示

  • 命令:
    将一个请求封装成一个对象,从而可以用不同的请求对客户进行参数化

    定时调度

    将一个请求封装成个对象,从而使得可以用不同的请求对客户进行参数化,并支持请求的排队和记录日志等功能

  • 责任链:
    为解除请求的发送者和接收者之间耦合,而使多个对象都有机会处理这个请求

  • 访问者:
    表示一个作用于某对象结构中的各元素的操作,可以在不改变各元素的类的前提下定义作用于这些元素的新操作

  • 中介者:
    用于解决对象之间的耦合问题

  • 解释器:
    给定一个语言,定义它的文法的一种表示并定义一个解释器,这个解释器使用该表示来解释语言中的句子

  • 备忘录:
    在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态

    版本控制

  • 适配器:
    将一个类的接口转换成客户希望的另一个接口

    用于将一个类的接口转换成客户希望的另一个接口

  • 组合:
    可以用于实现对象的动态组合

  • 状态模式:
    用于实现对象的状态转换

    将对象的行为分离出来,封装成独立的对象,让相同的行为可以共享

  • 享元:缓存

  • 外观:
    将一个系统的各个部分分离出来,从而可以独立地改变它们,而不会对其他部分产生影响

  • 建造者:
    将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示


数据结构:

菜鸟教程-设计模式

  • 类是一种抽象数据类型,它定义了一组属性和方法,用于描述一类对象的行为和状态。

  • 基本模式类型:
    A.创建型模式
    B.结构型模式
    C.行为型模式

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值