We can have nested classes in C#. These nested classes can inherit the OuterClass as well. For ex:
public class OuterClass
{
// code here
public class Ne
Its maybe too late But Let me Add my 2 cents Please , If I could understand your question correctly , You mean :
What is the advantage of a nested class that also inherited from its outer class?
The key point is in Construction
First Code :
public class OuterClass
{
public OuterClass{console.writeln("OuterClaass Called");}
public class NestedClass : OuterClass //It does Inherit
{
public NestedClass{console.writeln("NestedClass Called");}
}
}
static void Main()
{
outerClass.NestedClass nestedobject = new outerClass.NestedClass();
}
OutPut :
Outerclass Called
NestedClass Called
Second Code :
public class OuterClass
{
public OuterClass{console.writeln("OuterClaass Called");}
public class NestedClass //it dosent Inherit
{
public NestedClass{console.writeln("NestedClass Called");}
}
}
static void Main()
{
OuterClass.NestedClass nestedobject = new OuterClass.NestedClass();
}
Output :
NestedClass called
In the first code when constructing the NestedClass object , the Constructor of the OutrClass also would be Called and In my opinion it means Composition Relationship between NestedClass and The OuterClass But In the Second Code Object Construction of the NestedClass and the Outerclass Is not bounded together and its done independently .
hope it would be helpfull.