十接口(接口的概念,实现,继承,实现)抽象类与抽象方法(抽象类,抽象方法概念,使用)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十接口(接口的概念,实现,继承,实现)抽象类与抽象方法(抽象类,抽象方法概念,使用)相关的知识,希望对你有一定的参考价值。
接口
接口是一种用来定义程序的协议,它描述可属于任何类和结构的一组相关行为。
接口可由方法、属性、事件和索引器这四种成员类型的任何组合构成,但不能包含字段。
接口通过类继承来实现,一个类虽然只能继承一个基类,但可以继承任意接口。
声明实现接口的类时,需在基类列表中包含类所实现的接口的名称。
抽象类和抽象方法
如果一个类不与具体的事物相关联,而只是表达一种抽象的概念,仅仅是作为其派生类的一个基类,这样的类就是抽象类。
在抽象类中声明方法时,如果加上abstract关键字,则为抽象方法。
抽象类主要用来提供多个派生类可共享的基类的公共定义,他与非抽象类的主要区别有:
抽象类不能直接实例化。抽象类中可包含抽象成员,但非抽象类中不可以。抽象类不能被密封。
C#声明抽象类要使用abstract关键字,具体格式为:访问修饰符 abstract class 类名 :基类或接口{//类成员}
声明抽象方法要注意两点:抽象方法必须声明在抽象类中。声明抽象方法时,不能使用virtual、static和private修饰符
//抽象类与抽象方法的使用 public abstract class myClass { private string id=""; private string name=""; public string ID //编号属性及实现 { get{return id;} set{id=value;} } public string Name //姓名属性及实现 { get{return name;} set{name=value;} } public abstract void ShowInfo();//抽象方法,用来输出信息 } public class DriveClass:myClass //继承抽象类 { public override void ShowInfo() //重写抽象类中输出信息的方法 { Console.WriteLine(ID+""+Name); } } class Program { static void Main(string[] args) { DriveClass driveclass=new DriveClass(); //实例化派生类 myClass myclass=driveclass //使用派生类对象实例化抽象类 myclass.ID="BH001";//使用抽象类对象访问抽象类中的编号属性 myclass.Name="TM";//使用抽象类对象访问抽象类中的姓名属性 myclass.ShowInfo;//使用抽象类对象调用派生类中的方法 } }
运行结果为BH001 TM
以上是关于十接口(接口的概念,实现,继承,实现)抽象类与抽象方法(抽象类,抽象方法概念,使用)的主要内容,如果未能解决你的问题,请参考以下文章