सार वर्ग में अमूर्त विधियाँ होती हैं, जो व्युत्पन्न वर्ग द्वारा कार्यान्वित की जाती हैं। व्युत्पन्न कक्षाओं में अधिक विशिष्ट कार्यक्षमता होती है।
निम्नलिखित एक उदाहरण है जो C# में अमूर्त वर्गों के उपयोग को दर्शाता है।
उदाहरण
using System;
namespace Demo {
abstract class Shape {
public abstract int area();
}
class Rectangle: Shape {
private int length;
private int width;
public Rectangle( int a = 0, int b = 0) {
length = a;
width = b;
Console.WriteLine("Length of Rectangle: "+length);
Console.WriteLine("Width of Rectangle: "+width);
}
public override int area () {
return (width * length);
}
}
class RectangleTester {
static void Main(string[] args) {
Rectangle r = new Rectangle(14, 8);
double a = r.area();
Console.WriteLine("Area: {0}",a);
Console.ReadKey();
}
}
} आउटपुट
Length of Rectangle: 14 Width of Rectangle: 8 Area: 112
ऊपर हमारा सार वर्ग है -
abstract class Shape {
public abstract int area();
} अमूर्त वर्गों के बारे में निम्नलिखित नियम हैं।
- आप एक अमूर्त वर्ग का उदाहरण नहीं बना सकते हैं
- आप एक अमूर्त वर्ग के बाहर एक अमूर्त विधि घोषित नहीं कर सकते हैं
- जब किसी वर्ग को सीलबंद घोषित किया जाता है, तो उसे विरासत में प्राप्त नहीं किया जा सकता है, अमूर्त वर्गों को सीलबंद घोषित नहीं किया जा सकता है।