definition of encapsulation in c#