`

类的设计--接口

    博客分类:
  • OOD
 
阅读更多

需要一个类提供某些功能,这些功能可能有不同的实现方式,可以把它设计为接口。 

 

1.首先明确接口职责范围,职责需要高内聚的,即相关性的职责,无关的职责不应该加进来。

   

2.按照分析好的职责范围定义接口

 

3.建立类,简单的对接口实现:类中建立需要的方法,每个方法功能单一、简洁,方法内用伪代码简单写一下,因为可能会重构

 

4. 将多个实现类的共用方法抽取而形成一个抽像类。

 

5.a.标注实现类扩展抽像类并实现接口

    或者

   b.如果抽像类能够实现接口的大部分功能,则标注抽像类实现接口,实现类扩展抽像类。

 

7.重构:在代码实现中可能对功能有进一步深入的理解,可能需要调整类的结构或依赖或接口。

 

8.核查是否有过多的依赖,是否实现类职责多于接口的职责等等

 

9.接口实现类的方法的伪代码改为实际的代码 

 

10.接口测试

 

接口的使用方式:

  1.静态使用接口:

      类A只是使用该接口的一种实现方式。表现为接口是类A的成员变量。

      依赖注入 可以使用spring等。

 

   2.动态的使用接口:

       由于类A处理的数据结构不同,而需要使用不同的接口实现类。

       a方式:每一个枚举实例对应一个接口实现,建立静态工厂类根据枚举实例获取接口,前提接口实现数是相对固定,并枚举类型为类A所知。

      

 

  b.方式:

  

   

 

 

 

  • 大小: 60.3 KB
  • 大小: 49.3 KB
分享到:
评论

相关推荐

    软件开发文档模板GF-接口设计说明(GJB-438B-2009)-2785.pdf

    软件开发文档模板GF-接口设计说明(GJB-438B-2009)知识点总结 通过分析提供的文档模板,我们可以总结出以下知识点: 一、文档标识和版本号 * 文档标识是指文档的唯一标识符,用于标识文档的身份和版本号。 * ...

    java接口与内部类教学PPT

    接口-应用示例(设计模式) 7.内部类-简介 8.内部类-作用 9.内部类-特殊语法规则 10.内部类-安全性 11.内部类-局部内部类 12.内部类-匿名内部类 13.内部类-静态内部类 14.综述

    第7章--继承和接口设计-习题.docx

    在C#编程语言中,继承和接口设计是面向对象编程的重要概念,它们允许代码复用和灵活的结构设计。以下是对题目中涉及知识点的详细解释: 1. **单继承与多接口实现**: - C#支持单继承,即一个类只能继承自一个基类...

    基于FPGA的AXI-lite接口 UART设计

    标题中的“基于FPGA的AXI-lite接口 UART设计”指的是在Field Programmable Gate Array(FPGA)上实现通用异步收发传输器(UART)的一种方法,它利用了Advanced eXtensible Interface(AXI)协议的轻量级版本——AXI-...

    行业分类-外包设计-用于包装微流体装置的接口件的介绍分析.rar

    行业分类-外包设计-用于包装微流体装置的接口件的介绍分析.rar

    MVC权限设计-依赖接口编程系列3

    依赖接口编程是一种面向接口编程的方式,它强调在代码中使用接口而不是具体的实现类。这样做有几个好处:第一,提高代码的可测试性,因为我们可以轻松地替换接口的实现来创建单元测试;第二,增强代码的灵活性,使得...

    简述抽象类和接口的区别-java接口和抽象类异同.docx

    ### 抽象类与接口的区别 #### 一、定义与特性 **抽象类**: - 抽象类是一种特殊的类,它可以包含抽象方法(没有具体实现的方法)和具体方法(有具体实现的方法)。 - 抽象类不能被实例化,只能作为其他类的父类。 ...

    Java面向对象程序设计-并发(实现Runnable接口).pptx

    Java面向对象程序设计-并发(实现Runnable接口) Java面向对象程序设计-并发(实现Runnable接口)是Java编程语言中的一种重要概念,它们都是农业信息系统开发的基础组件。下面我们将详细探讨Java面向对象程序设计-...

    Java 接口.pdf Java面向对象设计 - Java接口 什么是接口? Java中的接口定义了一个引用类型来创建抽象概念

    这种设计允许我们通过`Walkable`接口引用`Person`或`Dog`的对象,并调用其`walk`方法,体现了多态性。 #### 5. Java 8新增特性 - **默认方法**:允许在接口中定义有实现的方法。 - **静态方法**:接口可以包含静态...

    行业分类-电子-RS-485通信接口保护电路的说明分析.rar

    本资料"行业分类-电子政务-RS-485通信接口保护电路.pdf"深入探讨了RS-485通信接口的保护电路设计,这对于确保系统在恶劣环境下的稳定性和可靠性至关重要。 首先,我们要理解RS-485接口的基本原理。RS-485采用差分...

    接口和抽象类的区别_--相信你看完不会再混淆了

    ### 接口与抽象类的区别及其应用场景 #### 面向接口编程与面向对象编程的关系 面向接口编程(Programming to Interfaces)与面向对象编程(Object-Oriented Programming, OOP)并非并列的概念,而是后者的一个重要...

    generator-mybatis接口类、实体类、xml文件生成工具

    这样,当数据库表结构发生变化时,开发者只需修改数据库设计,无需手动更新接口类和实体类,降低了维护成本。 此外,generator-mybatis通常允许用户自定义模板,以满足特定项目的需求。例如,可以通过调整模板来...

    Avalon接口类型浅析

    Avalon接口类型可以分为Avalon-MM接口和Avalon-ST接口两大类,各有其设计理念和应用场景。Avalon-MM接口更强调总线形式的连接,而Avalon-ST接口更强调点对点专用连接。两种接口类型的结合可以更好地体现控制通路和...

    C++类和接口的设计原则探讨

    在C++编程中,类和接口的设计至关重要,它们构成了面向对象程序的基础。设计原则是确保代码的可维护性、扩展性和高效性的关键。以下是一些关于C++类和接口设计的重要原则及其应用: 1. **单一功能原则**:每个类应...

    毕业设计-----------开题报告

    在JAVA中,我们不仅会接触到基础语法,如类、对象、接口,还会深入学习异常处理、多线程、集合框架、IO流、网络编程等核心概念。 首先,我们需要理解JAVA类和对象的概念。类是JAVA程序的基本构造块,它定义了对象的...

    抽象类和接口

    在选择使用抽象类还是接口时,关键在于理解问题领域的需求以及设计模式的目的。抽象类更适合用于提供基础结构,而接口更侧重于定义行为标准。选择正确的工具可以极大地提高代码的可读性和可维护性,同时也为后续的...

    JavaSE-接口部分笔记

    在面向对象编程中,接口提供了一种实现多态的方式,同时也支持了类之间的松耦合设计。 #### 二、接口的实现 1. **接口声明与定义** ```java public interface InterfaceName { // 接口中的成员变量默认为public...

    FPGA的PCI接口设计

    ### FPGA的PCI接口设计 #### 一、引言 随着计算机技术的发展,高速数据通信的需求日益增长,PCI(Peripheral Component Interconnect)总线作为一种高性能的局部总线,在各种电子设备和计算机系统中得到了广泛的...

    设计模式---桥接模式

    - `Abstraction` 类或接口,它定义了基本操作和对实现对象的引用。 - `RefinedAbstraction` 类,扩展了`Abstraction`,可能添加了更具体的业务逻辑。 - `Implementation` 接口,包含了实现部分的方法声明。 - `...

    23种设计模式 - 架构设计 - PPT

    - **适配器模式(Adapter)**:将一个类的接口转换成客户希望的另一个接口。 - **装饰模式(Decorator)**:动态地给一个对象添加新的功能。 - **代理模式(Proxy)**:提供一个替代对象来控制对真实对象的访问。 - **组合...

Global site tag (gtag.js) - Google Analytics