抽象是纯虚的概念,只是定义;
当创建一个类时,有时需要让该类包含一些特殊方法,该类对这些方法不提供实现。但是该类的派生类必须实现这些方法,这些方法称为抽象方法.
抽象类:
抽象方法必须定义在抽象类中.
抽象类中可以出现方法的具体实现或虚方法。
抽象类不能直接通过New实例化,必须通过继承自抽象类的子类来实例化。
语法:加上关键字abstract 无方法体();
优点:抽象方法的优点在于基类无需对抽象方法提供实现,但是基类的派生类必须实现基类中的抽象方法提供实现
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AbstractTest
{
public abstract class Computer
{
public abstract void Web();
}
public class PDA : Computer
{
public override void Web()
{
Console.WriteLine("PDA上网");
}
}
public abstract class PC : Computer
{
}
public class IBMPC : PC
{
public override void Web()
{
Console.WriteLine("IBM上网");
}
}
class Program
{
static void Main(string[] args)
{
Computer pc = new IBMPC();
pc.Web();
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AbstractTest
{
public abstract class Computer
{
public abstract void Web();
}
public class PDA : Computer
{
public override void Web()
{
Console.WriteLine("PDA上网");
}
}
public abstract class PC : Computer
{
}
public class IBMPC : PC
{
public override void Web()
{
Console.WriteLine("IBM上网");
}
}
class Program
{
static void Main(string[] args)
{
Computer pc = new IBMPC();
pc.Web();
}
}
}