C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例

C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例

ID:39547299

大小:15.68 KB

页数:8页

时间:2019-07-06

C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例_第1页
C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例_第2页
C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例_第3页
C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例_第4页
C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例_第5页
资源描述:

《C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C#类、接口、虚方法和抽象方法-接口与抽象类的区别实例1.抽象类可以有实现(包括构造函数),而接口不可以有任何实现。namespaceConsoleApplication1{   classProgram   {       interfaceIMyInterface1//接口不可以有实现       {           voidIMethod1();           voidIMethod2();       }       abstractclassAMyClass1       {           publicabstractvoidAMethod1();          

2、 publicabstractvoidAMethod2();           publicAMyClass1()//抽象类可以构造函数,可以实现           {           }           publicvoidAMethod()           {               Console.WriteLine("AMyClass.Amethod.");           }       }       staticvoidMain(string[]args)       {       }   }}在上面我们定义了一个接口和一个抽象类,在抽象类中我们有一个实

3、现方法AMyClass1而在接口中这是不允许的。接口中的所有方法都必须是未实现的(包括构造函数也是不能有的)。2.抽象类中还以有成员变量(包含静态成员变量)、属性、常量和静态方法,并且他们可以是非公共的;而接口中不能有成员变量、常量、静态方法,只能有公共的属性。namespaceConsoleApplication1{   classProgram   {       interfaceIMyInterface1       {           voidIMethod1();           voidIMethod2();           intIProperty1        

4、   {               set;               get;           }       }       abstractclassAMyClass1       {           publicabstractvoidAMethod1();           publicabstractvoidAMethod2();           publicvoidAMethod3()           {               Console.WriteLine("AMyClass.Amethod.");           }           p

5、rivatestaticvoidAMethod4()           {           }           privateinti;           privatestaticintj;           privatedoublePI=3.1514926;           privateintaProperty;           intAproperty           {               get{returnaProperty;}               set{aProperty=value;}           }       }   

6、    staticvoidMain(string[]args)       {       }   }}正如上面的一段代码一样,在抽象类中可以有属性、常量、成员变量(包含静态成员)、静态方法,而且它们还可以是非公共的;而在接口中除了有未实现的公共方法外,只可以有属性,并且是公共的(默认,不能添加public修饰符,否则在C#中报错)。3.抽象类可以从另一个类或者一个/多个接口派生;而接口不能从另一个类派生却可以实现另一个或多个接口。namespaceConsoleApplication1{   classProgram   {       interfaceIMyInterface1    

7、   {           voidIMethod1();           voidIMethod2();           intIProperty1           {               set;               get;           }       }       interfaceIMyInterface2       {           vo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。