博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
行为的抽象即是接口(Interface)
阅读量:5915 次
发布时间:2019-06-19

本文共 2132 字,大约阅读时间需要 7 分钟。

行为抽象即可写成接口(Interface)。

如此链接的例子中的开与关,就可以把它们设计为抽象方法。
我们宣告接口时,使用interface来声明,就如宣告类使用class一样。在编程规范中,使用字母"I"开头。接口中的所有签名,如方法,属性,索引器,事件等。不能带修饰符,比如public,private等,不能有任何实现内容,也不能声明虚拟(virtual)的或静态(static)的等。

ISwitchable
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// /// Summary description for ISwitchable/// namespace Insus.NET{    public interface ISwitchable    {        void TurnOn();        void TurnOff();    }}

Insus.NET在此列举几个方面,如果生活中,我们需要开关水龙头,门与窗户,手机关机更换电池或打开使用等等。这样,统一接口,在开发过程中可以做到规范程序。

比如白炽灯,实现接口:

IncandescentLamp
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// /// Summary description for IncandescentLamp/// namespace Insus.NET{    public class IncandescentLamp : ISwitchable    {        public IncandescentLamp()        {            //            // TODO: Add constructor logic here            //        }        public void TurnOn()        {            HttpContext.Current.Response.Clear();            string On_Light = "";            HttpContext.Current.Response.Write(On_Light);        }        public void TurnOff()        {            HttpContext.Current.Response.Clear();            string Off_Light = "";            HttpContext.Current.Response.Write(Off_Light);        }    }}

水龙头实现接口:

WaterTap
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// /// Summary description for WaterTap/// namespace Insus.NET{    public class WaterTap : ISwitchable    {        public WaterTap()        {            //            // TODO: Add constructor logic here            //        }        public void TurnOn()        {            //水龙头打开        }        public void TurnOff()        {            //水龙头关闭        }    }}

门实现接口:

Door
using System;using System.Collections.Generic;using System.Linq;using System.Web;/// /// Summary description for Door/// namespace Insus.NET{    public class Door: ISwitchable    {        public void TurnOn()        {           //写门打开的事情。        }        public void TurnOff()        {          //写门关闭的事情。        }    }}

只要对象的行为有“开”与“关”的,均可以此接口为实现。
Insus.NET在ASP.NET开发过程中,使用过大量的接口,来解决诸多问题: or

 

 

转载地址:http://kbgpx.baihongyu.com/

你可能感兴趣的文章
线性表顺序存储-练习题2
查看>>
IOS——关于UIView的autoresizingMask属性的研究
查看>>
KSImageNamed-Xcode-master
查看>>
block 实现原理详解(一)
查看>>
当用户提出需要一匹千里马时,追问一句为什么
查看>>
开源项目哪家强?硅谷风投总结的最火的25个开源项目排名
查看>>
Android 引用外部字体
查看>>
OpenStack Horizon创建虚拟机时增加虚拟机OS用户
查看>>
纯CSS画的基本图形
查看>>
详解java定时任务
查看>>
HTML vs XHTML vs DHTML
查看>>
Ubuntu下JDK7安装全过程并调试第一个带包的java程序
查看>>
backbone(二)视图
查看>>
LeetCode-Minimum Window Substring
查看>>
【Linux 系统编程】shell 流程控制Loop和引号(三)
查看>>
MySQL定时备份脚本
查看>>
mybatis 事务管理
查看>>
使用IDEA创建JFinal3.0官方Demo
查看>>
常规复制文本框内容的脚本
查看>>
//根据域名获取对应的ip地址
查看>>