একটি অ্যাবস্ট্রাক্ট প্রপার্টি ডিক্লেয়ারেশন প্রপার্টি অ্যাক্সেসরের কোনো ইমপ্লিমেন্টেশন প্রদান করে না।
এখানে আমরা একটি অ্যাবস্ট্রাক্ট ক্লাস Shape এবং এর দুটি ডেরাইভড ক্লাস: Square এবং Circle দেখব।
এখানে একটি অ্যাবস্ট্রাক্ট Area প্রপার্টি রয়েছে।
Circle ক্লাস
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;
}
}
}
Square ক্লাস
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;
}
}
}
Shape ক্লাস (অ্যাবস্ট্রাক্ট)
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);
}
}