實體類別
實體類別是具體的類別,可以直接實例化為物件,並對其進行操作。實體類別可以包含屬性、方法、事件等成員,並且可以被其他類別繼承。以下是一個示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| public class Person { public string Name { get; set; } public int Age { get; set; }
public void SayHello() { Console.WriteLine("Hello, my name is " + Name + " and I am " + Age + " years old."); } }
Person p = new Person(); p.Name = "John"; p.Age = 30;
p.SayHello();
|
抽象類別
抽象類別是一種特殊的類別,它不能直接實例化為物件,而是必須被其他類別繼承。抽象類別可以包含抽象方法、虛方法、屬性等成員,並且必須被子類實現。以下是一個示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| public abstract class Shape { public abstract double GetArea();
public virtual void Draw() { Console.WriteLine("Drawing shape..."); } }
public class Circle : Shape { private double radius;
public Circle(double radius) { this.radius = radius; }
public override double GetArea() { return Math.PI * radius * radius; } }
Circle c = new Circle(5.0);
double area = c.GetArea(); Console.WriteLine("The area of the circle is: " + area);
|
在上面的例子中,Shape 是一個抽象類別,它包含一個抽象方法 GetArea() 和一個虛方法 Draw(),而 Circle 是一個實體類別,它繼承自 Shape 並實現了 GetArea() 方法。