什么是 C# 中的抽象属性?
抽象属性声明不会提供属性访问器的实现。
让我们看看如何学习使用抽象属性。这里我们有一个带有两个派生类的抽象类形状:正方形和圆形。
这里,我们有一个抽象的面积属性。
以下是圆类。
范例
public class Circle : Shape { private int radius; public Circle(int radius, string id) : base(id) { this.radius = radius; } public override double Area { get { return radius * radius * System.Math.PI; } } }
同样,方形类。
范例
public class Square : Shape { private int side; public Square(int side, string id) : base(id) { this.side = side; } public override double Area { get { return side * side; } } }
以下是抽象的形状类。
范例
public abstract class Shape { private string name; public Shape(string s) { Id = s; } public string Id { get { return name; } set { name = value; } } public abstract double Area { get; } public override string ToString() { return Id + " Area = " + string.Format("{0:F2}", Area); } }
广告