这是本文档旧的修订版!
90-20:抽象类abstract
90-20-1:抽象类简介
抽象类是一种独特的类,它不能被直接实例化。
抽象类主要用来作为其他类的基类,定义一些通用的属性或方法,
然后由子类根据具体需求来改写抽象类里的方法。
方法体不需要—意味着花括号不用写
注意抽象方法只能在抽象类里面使用
例如: ``` abstract class max 抽象类 { public abstract void run();抽象方法 } ```
当其他类对象继承它时、需要重新写该方法[抽象方法]
虽然抽象类不能被直接实例化、但它可以定义字段和类型,这些字段和类型可以用于引用非抽象的派生类的实例对象
总结:抽象类中定义的抽象方法、没有实现、相当于只是定义了一个框架而已、
那个类要用这个框架[就继承于它、需要重新写该方法]
# 抽象类案例1
``` class Program {
static void Main(string[] args)
{
Test test = new Test();//子类对象
test.fangfa1();
Chouxiang_class test2 = test;////父类对象
test2.fangfa1();
test2.num = 4;
}
}
//抽象类
abstract class Chouxiang_class
{
public abstract void fangfa1();
public int num;
}
//子类[使用继承]
class Test : Chouxiang_class
{
public override void fangfa1()//重写父类
{
Console.WriteLine(" 子类已调用");
}
}
```