c# - how can we configure null removable components(object field) of a class? -
suppose have class components(object fields) of them can null(removed) suitable create new class without (component) field or use interface handle it. suppose have several components can removed objects thx in advance
public class class1{ component1 component1; component2 component2; component3 component3;//can null (removed) component4 component4;//can null (removed) } public class class2{//removed component3,component4(new class) component1 component1; component2 component2; } public class class3{//removed component3(new class) component1 component1; component2 component2; component4 component4; } public class class4{//removed component4(new class) component1 component1; component2 component2; component3 component3; }
or use interface
public interface icomponent1{ } public class component1:icomponent1{ } public class nocomponent1:icomponent1{ } public interface icomponent2{ } public class component2:icomponent2{ } public class nocomponent2:icomponent2{ } public interface icomponent3{ } public class component3:icomponent3{ } public class nocomponent3:icomponent3{ } public interface icomponent4{ } public class component4:icomponent4{ } public class nocomponent4:icomponent4{ } public class class1{ icomponent1 componentbehaviour1; icomponent2 componentbehaviour2; icomponent3 componentbehaviour3; icomponent4 componentbehaviour4; }
or check null condition(if needed) in methods of class.
based on experience better follow object oriented principles. in case think should create class first mandatory fields:
public class class1{ component1 component1; component2 component2; }
then using interfaces each nullable fields, like:
public interface interface1{ component1 component3; }
and interface like:
public interface interface2{ component1 component4; }
then in class have:
public class class2: class1, interface1
and classes like:
public class class2: class1, interface2 public class class3: class1, interface1, interface2
Comments
Post a Comment