A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 马毅 中级黑马   /  2012-12-24 00:02  /  1638 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

    以abstract修饰的类和方法叫抽象类(方法),抽象类不能实例化,抽象函数不能包含任何实现,例如:
  1.     public abstract class Demo
  2.     {
  3.         public abstract void abs1();
  4.         public abstract void abs2();
  5.     }
复制代码
抽象函数本身是virtual的,但无须显示申明,抽象类可以包含抽象函数,也可以包含非抽象函数,我们可以给上述抽象类加上一个非抽象方法:
  1.     public abstract class Demo
  2.     {
  3.         public abstract void abs1();
  4.         public abstract void abs2();
  5.         public void Say()
  6.         {
  7.             Console.WriteLine("这是抽象类中的Say方法");
  8.         }
  9.     }
复制代码
而若一个类中有抽象函数,则该类一定抽象类,非抽象类中不能包含抽象函数,若一个类继承字抽象类,则在未全部实现基类中的抽象方法之前,其也必须是抽象的,可以如下对上面的抽象实现:
  1.     public  class demo:Demo
  2.     {
  3.         public override void abs1()
  4.         {
  5.             //
  6.         }

  7.         public override void abs2()
  8.         {
  9.             //
  10.         }
  11.     }
复制代码
注意:abstract成员也不能为私有。
其他C#基础请看这里

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

4 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
嗯学习学习
回复 使用道具 举报
{:soso_e179:}
回复 使用道具 举报
{:soso_e179:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马