C#中接口的基本概念

1.接口的引用

我们不能直接通过类对象的成员访问接口,可以通过类对象引用强制转换为接口类型来获取指向接口的引用。

有了接口的引用,就可以使用点号来调用接口的方法

理解:这个是多态的一种概念,把对象赋值给接口后,通过统一的接口名称访问能实现多种行为

2.使用返回接口的方法(增加方法的灵活性,让方向像对象一样可以有属性和方法)

public IEnumerator GetNumeraotr();

这个方法返回的是继承IEnumerator接口的对象,可以通过这个函数的返回值来调用接口的扩展方法或者属性

GetNumerator().Current  这个属性就可以返回值了

C#用了几个基本的概念就可以反复的迭代出非常复杂的功能,再使用复杂的功能来开发更复杂的功能

常用接口

  1. static void Main(string[] args)
  2. {
  3. using (CaryClass caryClass = new CaryClass()) // IDisposeable接口用using来调用
  4. {
  5. caryClass.DoSomething();
  6. }
  7. CaryClass caryClass2 = new CaryClass();
  8. try
  9. {
  10. caryClass2.DoSomething();
  11. }
  12. finally // 用finally来实现借口的调用
  13. {
  14. IDisposable disposable = caryClass2 as IDisposable;
  15. if (disposable != null)
  16. disposable.Dispose();
  17. }
  18. Console.ReadKey();
  19. }
  20. }
  21. public class CaryClass : IDisposable
  22. {
  23. public void DoSomething()
  24. {
  25. Console.WriteLine("Do some thing....");
  26. }
  27. public void Dispose()
  28. {
  29. Console.WriteLine("及时释放资源");
  30. }
  31. }

来自为知笔记(Wiz)

时间: 2024-11-03 15:45:26

C#中接口的基本概念的相关文章

Java中接口和抽象类的比较

Java中接口和抽象类的比较-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计使用多态性的基础[[1]].(在面向对象语言中,接口的多种不同的实现方式即为多态.多态性是允许你将父对象设置成为和一个或更多的他的子对象的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4编程技术内幕").简单的说,就是一句话:允许将子类类型的

面向对象高级——接口的基本概念和对象的多态性

接口 需要掌握接口的定义格式及使用 掌握接口与抽象类的关系 具体内容: 接口是Java中最重要的概念,接口可以理解为一种特殊的类,里面全部是由全局常量和公共的抽象方法所组成. 如果一个类中完全是由全局常量(static final声明)和抽象方法组成,就可以将其定义成一个接口. 接口的定义格式: interface 接口名称{    全局常量:    抽象方法: }   interface A{ // 定义接口A public static final String AUTHOR = "刘勋&q

Java中接口和抽象类的比較

Java中接口和抽象类的比較-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计使用多态性的基础[[1]]. (在面向对象语言中,接口的多种不同的实现方式即为多态. 多态性是同意你将父对象设置成为和一个或很多其它的他的子对象的技术.赋值之后.父对象就能够依据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4编程技术内幕"). 简单的说.就是一句话:同意将

C#中接口和抽象类

1抽象类 (1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法 (2) 抽象类不能被实例化 (3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明为抽象类 (4) 具体派生类必须覆盖基类的抽象方法 (5) 抽象派生类可以覆盖基类的抽象方法,也可以不覆盖.如果不覆盖,则其具体派生类必须覆盖它们.如: using System; public abstract class A //抽象类A { private int num=0; public

java中接口与多重继承的关系

在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制.正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力.abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于abstract class和interface的选择显得比较随意.其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对 于问题领域本质的理解.对于设计意图的理解是否正确.合理

Activity中UI框架基本概念

Activity中UI框架基本概念 Activity 是应用程序的基本组成部分,提供了可视的界面,与用户进行交互: 具体Acitivity是怎么样显示这些事视图元素以及响应事件交互的. 一Activity相关概念 Activity:Activity包含一个Window,该Window在Activity的attach方法中通过调用 PolicyManager.makeNewWindo创建: View:最基本的UI组件,表示屏幕上的一个矩形区域: DecorView:是Window中View的Roo

浅析C#中接口的重要性

C#中有了接口这一概念.我觉得接口就像是C++中的抽象基类. 接口可以理解为是一种约定,使得实现这个接口的类或是结构在形式上保持一致. 声明接口: 语法和声明抽象类完全相同.  public interface IBankAccount { void PayIn(decimal amount); bool Withdraw(decimal amount); decimal Balance { get; } } 注意:接口中只能包含方法.属性.索引器和事件的声明.不允许声明成员上的修饰符,即使是p

Java中接口和抽象类的区别与联系

Java中接口和抽象类的区别与联系 1. 抽象类: (1).概念:抽象类是对一种事物的抽象,即对类抽..抽象类是对整个类整体进行抽象,包括属性.行为.Java抽象类和Java接口一样,都用来声明一个新的类型.并且作为一个类型的等级结构的起点. (2).格式: public abstract class abstractDemo{ /**属性*/ private String name; /**方法*/ public abstract void fun(); } (3).说明: A:抽象类中不一定

引用文档-软件测试分类及测试中三个主要概念

软件测试分类及测试中三个主要概念 原文链接:https://blog.csdn.net/qq_35867537/article/details/77477775 1.      软件测试分类 按测试技术分 按测试技术,软件测试可分为:黑盒测试.白盒测试.灰盒测试 黑盒测试:在程序接口进行测试,它只是检查程序功能是否按照规格说明书的规定正常使用.也被称为功能测试或者数据驱动测试. 白盒测试:要完全了解程序结构和处理过程,它按照程序内部逻辑测试程序,检验程序中每条通路是否按预定要求正确工作.也被称为