抽象类及与接口的区别
抽象类就是指被设计为被继承的类。抽象类只能作为其他类的基类。
(其实简单来说就是好多东西它有一个共同的作用,但是他们去实现的方法和效果都不一样,比如动物都会发出叫声,但它们的叫声各不相同。这时就可以把叫声这个方法定义在抽象类里面不同的动物去继承它,分别实现各自具体的叫声。)
注意:
1.不能创建抽象类的实例
2.抽象类必须使用abstract修饰符
3.任何派生自抽象类的类都必须使用override关键字实现该类所有抽象成员
代码示例:
abstract class Animals
{ public abatract void shout();
}
class Dog:animals
{
public override void shout()
{ console.WriteLine("汪汪汪");
}
}
如果想在一个非抽象类中使用抽象类方法,例如在Program中使用Dog 的shout方法,则如下:
class Program:Dog
{
Dog dog=new Dog();
dog.shout();
}
4.一个抽象类可以包含抽象和非抽象方法,当一个类继承于抽象类,那么这个派生类就必须实现所有的基类抽象方法。
(通俗一些来讲,就是(抽象类)父亲有一个 公司,里面有运行模式,但不知如何运行,(派生类)儿子继承父亲的公司,他就必须去实现父亲公司里所有的运行模式,公司才可以正常运行。)
————————————————
版权声明:本文为CSDN博主「星光Y」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41679818/article/details/80724468