c#抽象类的使用及注意事项

本文介绍了面向对象编程中抽象类和抽象成员的概念及其使用方式。详细解释了抽象成员的特性,包括必须是函数成员、使用abstract修饰符及不能有实现代码块。同时探讨了抽象类的特点,如不可实例化、必须被继承且派生类需实现所有抽象成员。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

一.抽象成员

抽象成员成员是指设计成为被覆写的函数成员。抽象成员具有以下特征:

      1.必须是一个函数成员。也就是说字段和常量不能为抽象成员。

      2.必须用abstract修饰符标记。

      3.不能有实现代码块。抽象成员的代码用分号表示

abstract public void print(string s);//方法
abstract public int MyNumber//属性
{
set;
get;
}

二.抽象类

抽象类就是指被设计为被继承的类。抽象类只能作为其他类的基类。

        (其实简单来说就是好多东西它有一个共同的作用,但是他们去实现的方法和效果都不一样,比如动物都会发出叫声,但它们的叫声各不相同。这时就可以把叫声这个方法定义在抽象类里面不同的动物去继承它,分别实现各自具体的叫声。)

注意:

      1.不能创建抽象类的实例

      2.抽象类必须使用abstract修饰符

      3.任何派生自抽象类的类都必须使用override关键字实现该类所有抽象成员

代码示例:

abstract class Animals
{
  public abatract void shout();
}
class Dog:animals
{
public override void shout()
   {
     console.WriteLine("汪汪汪");
   }
}

      4.一个抽象类可以包含抽象和非抽象方法,当一个类继承于抽象类,那么这个派生类就必须实现所有的基类抽象方法。

    (通俗一些来讲,就是(抽象类)父亲有一个 公司,里面有运行模式,但不知如何运行,(派生类)儿子继承父亲的公司,他就必须去实现父亲公司里所有的运行模式,公司才可以正常运行。)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值