Từ khóa abstract trong C# được dùng cho các lớp abstract. Lớp abstract trong C# bao gồm các phương thức abstract và non-abstract. Bạn không thể khởi tạo một lớp abstract.
Ví dụ về lớp abstract Vehicle và phương thức abstract display():
public abstract class Vehicle
{
public abstract void display();
}
Lớp abstract có các lớp dẫn xuất: Bus, Car, và Motorcycle. Dưới đây là triển khai của lớp dẫn xuất Car:
public class Car : Vehicle
{
public override void display()
{
Console.WriteLine("Car");
}
}
Ví dụ hoàn chỉnh
using System;
public abstract class Vehicle
{
public abstract void display();
}
public class Bus : Vehicle
{
public override void display()
{
Console.WriteLine("Bus");
}
}
public class Car : Vehicle
{
public override void display()
{
Console.WriteLine("Car");
}
}
public class Motorcycle : Vehicle
{
public override void display()
{
Console.WriteLine("Motorcycle");
}
}
public class MyClass
{
public static void Main()
{
Vehicle v;
v = new Bus();
v.display();
v = new Car();
v.display();
v = new Motorcycle();
v.display();
}
}
Kết quả
Bus Car Motorcycle