title: Why is the size of an empty class not zero in C#?
body: <p>From very first day of my learning of OOPS I learned that a class is a logical entity which does not require any space.</p>
  
  <p>But today I was just reading about Memory Management and found that the size of a Class in C# is not 0. The size of a class instance is determined by:</p>
  
  <ol>
  <li>The amount of data actually stored in the instance </li>
  <li>The padding needed between the values </li>
  <li>Some extra internal data used by the memory management</li>
  </ol>
  
  <p>Since Empty class will not have any data so 1st point will be 0 but what are others two points here?
  Why size of an empty class is not zero?</p>