• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
我的学习笔记
   首页       联系   管理    订阅  订阅

抽象类(abstract)

抽象类具有一下特性: 1、抽象类不能实例化。 2、抽象类可以包含抽象方法和抽象访问器。 3、不能用seled修饰符修改抽象类,这意味着抽象类不能被继承 4、从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实现。 抽象方法具有以下特性: 1、抽象方法是隐式的需方法(在定义抽象方法,编译器会自动在前面加上virtual) 2、只允许在抽象类中使用抽象方法声明 3、因为抽象方法声明不提供实际的实现,所以没有方法体,方法声明只是以一个分号结束,并且在签名后没有打括号({})

抽象类具有一下特性:
1、抽象类不能实例化。
2、抽象类可以包含抽象方法和抽象访问器。
3、不能用seled修饰符修改抽象类,这意味着抽象类不能被继承
4、从抽象类派生的非抽象类必须包括继承的所有抽象方法和抽象访问器的实现。
抽象方法具有以下特性:
1、抽象方法是隐式的需方法(在定义抽象方法,编译器会自动在前面加上virtual)
2、只允许在抽象类中使用抽象方法声明
3、因为抽象方法声明不提供实际的实现,所以没有方法体,方法声明只是以一个分号结束,并且在签名后没有打括号({})

 抽象类的实例:

 1abstract class ShapeClass
 2    {
 3        abstract public int Area();
 4    }

 5    class Square : ShapeClass
 6    {
 7        int x, y;
 8        public override int Area()
 9        {
10            return x * y;      //抽象方法必须实现,抽象类不能实例化
11        }

12    }

抽象类不能被实例化Demo:

 1abstract class ABC
 2    {
 3        public abstract void AFunc();
 4        public void BFunc()
 5        {
 6            Console.WriteLine("这是一个非抽象方法!");
 7        }

 8    }

 9    class DRV : ABC
10    {
11        public override void AFunc()
12        {
13            Console.WriteLine("这是一个抽象方法");
14        }

15        static void Main(string[] args)
16        {
17            DRV objB = new DRV();
18            objB.AFunc();
19            objB.BFunc();
20        }

21    }


 

posted @ 2007-12-01 12:51  吴有鋆  阅读(297)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3