C#学习小结:接口的作用

简介:

假设现在有好四个人A,B,C,D,他们都要写毛笔字,有的写行书,有的写楷书,有的写诗,有的写词,虽然写的内容不同,写法也不一样,但是都要在写毛笔字前都要蘸水。那么我们可以建立四个类Class WriterA,Class WriterB,Class WriterC,Class WriterD,让他们都继承同一个接口IDipWater

IDipWater
interface IDipWater 
{
    void
 DipWater();
}

 

WriterA的设计

 

WriterA
class WriterA 
{
    public
 WriterA()
    { }

    void
 DipWater()
    {
        Dip();
    }
}

 

采用接口的好处:

1,将蘸水的方法DipWater抽取出来写到接口的好处是所有继承接口IDipWater的书法家们都会去实现接口中的蘸水方法,而不会忘记蘸水。

2,如果除了蘸水之外书法家们写字前还有其他必做事情要做,仍然可以定义成接口,让书法家们继承接口。

3,对象(类)需要多态,并且往往需要多重继承以便于放入不同父类的多态流程中。但是c#不支持多重继承,接口是个好帮手。 

MSDN对接口的阐述为:

接口是使用 interface 关键字定义的。例:

IComparable
interface IComparable
{
    
int CompareTo(object obj);
}

 MSDN对接口的概述:

接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员。

不能直接实例化接口。

接口可以包含事件、索引器、方法和属性。

接口不包含方法的实现。

类和结构可从多个接口继承。

接口自身可从多个接口继承。

 



    本文转自wengyuli 51CTO博客,原文链接:http://blog.51cto.com/wengyuli/588641,如需转载请自行联系原作者



相关文章
|
2月前
|
C#
C#学习相关系列之数据类型类的三大特性(二)
C#学习相关系列之数据类型类的三大特性(二)
|
2月前
|
C#
C#学习相关系列之yield和return的区别
C#学习相关系列之yield和return的区别
|
2月前
|
Java 调度 C#
C#学习系列相关之多线程(一)----常用多线程方法总结
C#学习系列相关之多线程(一)----常用多线程方法总结
|
2月前
|
C#
C#学习相关系列之数组---常用方法使用(二)
C#学习相关系列之数组---常用方法使用(二)
|
2月前
|
存储 C#
C#学习系列相关之数组(一)---数组的定义与使用
C#学习系列相关之数组(一)---数组的定义与使用
|
2月前
|
C#
C#学习相关系列之常用符号介绍
C#学习相关系列之常用符号介绍
|
2月前
|
C#
C#的基本语法结构学习
【5月更文挑战第17天】C#基础语法包括变量(如`int x = 10`)、常量(`const int MAX_VALUE = 100`)、运算符(如算术和比较运算符)、控制语句(if、for、while等)和函数声明(`int Add(int x, int y) { return x + y; }`)。这些构成C#程序的基本元素。
48 0
|
2月前
|
开发框架 .NET C#
C#学习相关系列之Linq用法---where和select用法(二)
C#学习相关系列之Linq用法---where和select用法(二)
|
27天前
|
前端开发 Java C#
GitHub突破5k Star!这件事情我坚持了3年,努力打造C#/.NET/.NET Core全面的学习、工作、面试指南知识库
GitHub突破5k Star!这件事情我坚持了3年,努力打造C#/.NET/.NET Core全面的学习、工作、面试指南知识库
|
2月前
|
C#
C#的类和对象的概念学习案例刨析
【5月更文挑战第17天】C#是一种面向对象的语言,以类和对象为核心。类作为对象的模板,定义了属性(如Name, Age)和行为(如Greet)。对象是类的实例,可设置属性值。封装通过访问修饰符隐藏实现细节,如Customer类的私有name字段通过Name属性访问。继承允许新类(如Employee)从现有类(Person)继承并扩展。多态让不同对象(如Circle, Square)共享相同接口(Shape),实现抽象方法Area,提供灵活的代码设计。
47 1