`
totoxian
  • 浏览: 1031392 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

接口(Interface)的用途

 
阅读更多

接口(Interface)的用途

左直拳

Interface我之前很少用,不知道它有什么用。纯粹是制订一些标准,让继承的类拥有指定的功能和属性吗?

现在我发现,接口更大的好处也许是 能够将不同类的实体看作同一种对象,只要这些类都继承了同一个接口。

比如说,

Interface ILife

{

void ();

void 繁殖();

}

Class Human : ILife{}

Class Dog : ILife{}

ILife objLife;

Human human = new Human();

Dog dog = new Dog();

objLife = (上帝高兴) ? (ILife)human : (ILife)dog;

objLife.();

objLife.繁殖();

这样在某些时候,只由objLife对外界服务,可以屏蔽大量的细节,省去不少判断。从这个意义来说,接口可以实现类级的统一调用,而委托则是实现函数级的统一调用。

分享到:
评论

相关推荐

    面向接口编程详解

    是不知各位有没有这样的疑惑:接口有什么用途?它和抽象类有什么区别?能不能用抽象 类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是 什么意思?有什么思想内涵?和面向对象...

    matlab运行代码暂停-Interface:接口REDv2

    在matlab(位于代码文件夹中)中打开interface_app.mlapp应用程序以编辑代码。 接口工作示例: 指示 ---------------------------------------- 1)一般用途------ --------------------------------------- -角度...

    Python面向对象之接口、抽象类与多态详解

    二:声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子类继承接口类,并且实现接口中的功能 接口主要是java等语言中的概念,python中并没有明确...

    详解C#中的接口属性以及属性访问器的访问限制

    public interface ISampleInterface { // Property declaration: string Name { get; set; } } 接口属性的访问器不具有体。因此,访问器的用途是指示属性是否为读写、只读或只写。 在此例中,接口 IEmployee ...

    Eazy-ARCore-Interface:Eazy ARCore接口是一个Unity3D插件,可简化ARCore项目的开发和调试。 具体而言,它模拟ARCore在Unity3D编辑器内部的Android设备中如何工作。 因此,它允许更快地开发ARCore应用,而无需构建和部署到设备上以测试功能

    Eazy ARCore Interface是一个Unity3D插件,可简化ARCore项目的开发和调试。 具体而言,它模拟ARCore在Unity3D编辑器内部的Android设备中如何工作。 因此,它可以更快地开发ARCore应用,而无需构建和部署到设备上以...

    路由器常用show-命令.xls

    常用路由器show命令,, 完整命令,缩写,用途/显示的信息 常规命令,, show running-config,sh run,现实内存中当前运行的配置。包括主机名,口令、接口IP地址、激活的路由协议、DHCP和...接口相关的命令,, show interface

    基于python requests + unittest 实现的接口自动化测试脚本+源代码+文档说明

    # Interface-Automation-Test 基于python requests + unittest 实现的接口自动化测试脚本 技术栈:python 3.7 + requests + unittest 依赖库: pip3 install requests==2.6.0 pip3 install xlrd==1.1.0 pip3 ...

    关于Go编程语言的一些常见基础面试题.pdf

    7. Go语言中的接口(Interface)是什么?请简要介绍在Go中的接口实现方式。 8. Go语言中的defer关键字是什么?请说明在Go中defer的作用和用法。 9. 什么是Go语言中的结构体(Struct)?请说明在Go中的结构体定义和...

    java面试宝典

    是否可以implements(实现)interface(接口)? 12 45、内部类可以引用他包含类的成员吗?有没有什么限制? 12 46、java 中实现多态的机制是什么? 12 47、在java 中一个类被声明为final 类型,表示了什么意思? 12 48、...

    计算机网络技术答案(1).doc

    网络接口板又称为通信适配器或网络适配器(adapter)或网络 接口卡NIC(Network Interface Card)但是现在更多的人愿意使用更为简单的名称"网卡"。 3、活动目录 活动目录(Active Directory)是面向Windows Standard...

    关于C#编程语言的一些常见基础面试题.pdf

    1. 什么是C#编程语言?请简要介绍C#语言的特点和用途。 2. C#与其他编程语言(如Java、C++等)...10. C#中的接口(Interface)是什么?请简要介绍在C#中的接口实现方式。 11. 什么是C#中的集合(Collections)?请列举

    sdspi:SD卡控制器,使用(可选)共享的SPI接口

    SD卡控制器,使用共享的SPI接口该Verilog... 面对卡接口的潜在变化,这使得该SDSPI控制器不仅用途更广,而且交钥匙量也更少。 尽管此内核是为与一起使用而,并通过使用的Wishbone DMA控制器进行了增强,但此内核中没有

    AN1487a_cn.pdf

    DALI数字可寻址照明接口(Digitally Addressable Lighting Interface,DALI)已成为欧洲应对能源危机的一项标 准,主要针对商业和工业用途。DALI是IEC 60929规范 的一部分,具体与数控可调光荧光镇流器有关。 本文档...

    jsr80 java 访问 usb

    主控器有两个标准――开放主控器接口(Compaq 的 Open Host Controller Interface,OHCI)和通用主控器接口(Intel 的 Universal Host Controller Interface,UHCI)。这两个标准提供了同样的能力,并可用于所有的 USB ...

    php-7.2.28-Win32-VC15-x86.zip

    PHP(PHP:Hypertext Preprocessor)是一种在电脑上执行的脚本语言,主要是用途在于处理动态网页,也包含了命令列执行接口(command line interface),或者产生图形使用者接口(GUI)程序,PHP 独特的语法混合了C、...

    android-framework-hal

    1.2 Service与Manager的意义与用途 1.3 libhardware 与 HAL API 1.4 Stub & Module 的观念 1.5 专题讨论:定义并撰写第一个HAL Stub 2.HAL Development 2.1 HAL Stub Analysis and Design (OOAD) 2.2 HAL Stub ...

    C#资源释放方法实例分析

    本文实例讲述了C#资源释放方法。分享给大家供大家参考,具体如下: 1、try{}finally{} 2、using 只有类型实现了...2.此接口的主要用途是释放非托管资源。 当不再使用托管对象时,垃圾回收器会自动释放分配给该对

    实验报告——实验一:NAT配置.doc

    实验过程和主要步骤 子网的划分与子网掩码的配置: "设备 "接口 "IP地址 "子网掩码 " "PC0 "F "192.168.3.1 "255.255.255.0 " "PC1 "F "192.168.2.1 "255.255.255.0 " "Router0 "F0/0 "192.168.3.2 "255.255.255.0 ...

    PHP项目开发实录

    PHP项目开发实录,PHP(PHP:Hypertext Preprocessor)是一种在电脑上执行的脚本语言,主要用途是在于处理动态网页,也包含了命令行执行接口(command line interface),或者产生图形用户界面(GUI)程式。

Global site tag (gtag.js) - Google Analytics