I have two classes B
and C
which share a common property a
of type D
.
class B
{
public D a {get;set;}
public E b {get;set;}
}
class C
{
public D a {get;set;}
public F c {get;set;}
}
I could make a
abstract class A
{
public D a {get;set;}
}
from which B
and C
inherits.
class B:A
{
public E b {get;set;}
}
class C:A
{
public F c {get;set;}
}
I also know that i will have a service with a method GetValue
which returns an object of type A
.
interface Service
{
A GetValue();
}
The class A
could also be an interface but then the property a
had to be implemented double by B
and C
. The question is should I use interface
or abstract
for implementig A
? To inherit from abstract class just for the reason that two classes have a common property seem to be not a good practice, but I am not sure.
Aucun commentaire:
Enregistrer un commentaire