I have following scenarios in my code and want to understand Aggregation, Composition, Association relation between the classes.
1)
class A : IDisposable
{
private B objB;
public A(B )
{
objB = new B();
}
public void Dispose()
{
objB.Dispose();
}
}
2)
class A : IDisposable
{
private B objB;
public A(B objB)
{
this.objB = objB;
}
public void Dispose()
{
}
}
3)
class A : IDisposable
{
private B objB;
public A()
{
}
public void Sample()
{
objB = new B();
}
public void Dispose()
{
if (objB != null)
{
objB.Dispose();
}
}
}
4)
class A : IDisposable
{
public A()
{
}
public void Sample()
{
using (B objB = new B())
{
//Do some operation
}
}
public void Dispose()
{
}
}