`
xwood
  • 浏览: 102120 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

接口模式(Interface)

阅读更多
        在说到接口模式之前首先需要提到两个概念,一个是Interface,一个是AbstractClass.
        Interface在Java中是为了规定类与类之间交互的行为,限制了彼此交互的方式。实现Interface的类需要实      现其所有方法。所以一般在Interface定义都有粒度的要求,即保证Interface在每次被implements的时候,其定义的所有方法都会被使用。所以,一般而言,接口的定义都应当在需求的基础上越小越好,避免将不同接口的方法硬揉在一个接口中。正如我们看到的,很多接口其实只有一个方法。因为一个类可以实现很多接口,所以,接口的方法少并不会限制类的方法。重要的是保证接口的功能明确,职责单一。这样,在限制类交互行为,明确设计方法才会有所帮助,并且,也将给扩展带来很大的自由,这一点当你的接口实现有所变化时就会体现的相当明显。
        AbstractClass即虚拟类,既然是类,自然是在设计是区别与Interface的。它要保证类定义的完整性,符合抽象的规范,并且还要提供扩展。
        在设计模式中,作为一个可扩展性高的设计,一般而言一个或几个Interface的实现都需要提供一个Stub作为存根,即实现Interface的一个或几个可以作为公用的方法,而对于其他一些不用或者有变化的方法则只是简单的提供一个空方法体。这个Stub一般就是通过AbstractClass来实现的。
        接口模式在实际操作过程中主要体现在两个阶段,两个阶段也体现了两种作用。
       
  • 第一个是设计阶段,设计阶段的接口模式主要体现为规范类的交互,为系统提供高的可扩展性。
  • 第二个是系统维护阶段,为存在的系统提供扩展的接口。


        超越普通接口的设计实现:
        1).Adapter模式:http://xwood.iteye.com/blog/1603781
        2).Facade模式
        3).Composite模式
        4).Bridge模式
分享到:
评论

相关推荐

    asp.net 接口(interface)例子

    在.NET框架中,接口(Interface)是定义行为规范的关键组件,尤其在ASP.NET开发中,接口扮演着重要的角色。它们提供了代码的抽象和多态性,使得类可以实现多个不同的行为,增强了代码的灵活性和可扩展性。让我们深入...

    接口(Interface)样例

    在编程领域,接口(Interface)是一种非常重要的概念,特别是在面向对象编程中,它扮演着规范和契约的角色。接口定义了一组方法的签名,但不提供具体的实现,这使得不同的类可以实现同一个接口,从而实现相同的行为...

    Java中的interface接口

    在Java编程语言中,接口(Interface)是一种定义行为规范的关键元素,它允许我们实现多继承。接口是完全抽象的,不包含任何方法的实现,只有方法的声明、常量定义以及默认方法。Java中的接口提供了以下核心知识点: ...

    Java接口(interface)的概念及使用-Java教

    Java接口(Interface)是Java编程语言中的一个关键概念,它是一种完全抽象的类型,用于定义对象的行为标准。接口中只包含常量定义和抽象方法,不包含任何实现代码。理解并熟练使用Java接口,对于提升代码的灵活性、...

    Java语言提供的一种接口(interface)机制

    此外,接口在设计模式中也有广泛的应用,例如策略模式中,接口定义了一系列可供选择的策略,客户端可以根据需要选择具体的策略类。在事件驱动编程中,事件监听器通常也是一个接口,实现该接口的类能够处理特定类型的...

    深入解析Java接口(interface)的使用

    - **设计模式**:如在工厂模式、策略模式、装饰器模式等设计模式中,接口起到了关键作用。 - **服务接口**:在服务导向架构(SOA)中,服务提供者通过接口定义服务,消费者通过实现这些接口来调用服务。 总之,...

    商业编程-源码-接口(Interface)样例.zip

    例如,在设计模式中,工厂模式和策略模式就利用了接口的多态性。 3. **解耦**:接口将具体实现与使用这些实现的代码分离,降低了代码间的耦合度,使得系统更易于维护和扩展。 4. **模块化**:接口可以帮助组织代码...

    Java中interface接口与abstractclas

    开发者可以根据需求来决定使用接口还是抽象类,或者两者结合使用,以实现更复杂的设计模式,如策略模式、装饰器模式等。 总的来说,理解并熟练运用Java中的`interface`接口和`abstract class`抽象类是成为专业Java...

    接口设计模式示例

    在Java中,接口是通过`interface`关键字声明的,而在C#中,接口则使用`interface`关键字并用分号分隔各个方法。 接口设计模式的示例通常涉及服务层的设计。例如,在`interService`这个压缩包中可能包含了一个或多个...

    讲解interface的例程

    在编程领域,接口(Interface)是一种重要的抽象概念,主要用于实现多态性和定义对象间交互的规范。本例程是基于策略模式设计的,旨在帮助理解何时以及如何有效地使用接口。策略模式是一种行为设计模式,它使你能在...

    C# 控制台 interface接口实例

    通过模拟duck游戏功能来介绍interface的使用 其中使用了策略模式 推荐先看代码再看ppt,最后再体会策略模式的定义 策略模式定义: 针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互...

    Visual C# Custom Interface VS2008 Example_interface_hayi97_kepwa

    同时,接口也可以用于实现设计模式,比如策略模式,其中接口定义了一组操作,而具体实现可以根据需求动态选择。 至于"kepware",这可能是指特定的软件或技术,如Kepware Communications (KEPServerEX),它是一个...

    APi_interface.rar_c++ API接口_com/interface-api

    C++ API接口是一种设计模式,允许开发者通过预先定义好的函数或类库来访问特定功能。这些接口通常作为库提供,可以是静态链接库或动态链接库(DLL)。API接口定义了对外公开的方法和数据结构,使得开发者能够按照...

    adb interface 驱动程序

    然而,有时我们遇到的问题是,当手机通过USB连接到电脑后,Android Studio无法识别到设备,提示“缺少adb interface驱动程序”。这通常是因为电脑上缺少Android Debug Bridge (ADB) 的USB驱动,它是Android SDK的一...

    TMS320C6000 DSP External Memory Interface (EMIF)

    #### 三、同步动态随机存取内存接口(SDRAM Interface) ##### 3.1 SDRAM初始化 SDRAM在启动之前需要进行一系列初始化设置,包括配置模式寄存器、预充电等操作,以确保SDRAM能够正常工作。这些初始化步骤通常通过EMIF...

    matlab autosar开发专栏,mode switch interface讲解这篇文章对应的模型

    本篇我们将深入探讨MATLAB中的Mode Switch Interface(模式切换接口),这是一个关键概念,用于管理ECU在不同工作模式之间的转换。 首先,了解什么是Mode Switch Interface。在AUTOSAR系统中,ECU通常需要运行在...

    go interface

    7. **接口的使用场景**:接口在 Go 中有着广泛的应用,例如在设计模式(如工厂模式、策略模式等)、数据处理(如 JSON 序列化与反序列化)、错误处理、单元测试等方面。它们提供了灵活性,使得代码更易于扩展和维护...

    interface.js

    在JavaScript中,接口是一种设计模式,它定义了对象必须实现的方法集合,以确保这些对象具有特定的行为。"interface.js"可能是为了弥补JavaScript这种动态类型语言在面向对象编程中的接口缺失而设计的。 在...

    接口 接口的应用

    3. **设计模式**:接口在许多设计模式中扮演关键角色,如策略模式、观察者模式、命令模式等。例如,在策略模式中,接口定义了一系列可互换的算法,而具体算法类实现该接口。 4. **服务定义**:在服务导向架构(SOA...

Global site tag (gtag.js) - Google Analytics