title: What is the difference between inheriting from Abstract class vs Inheriting from a similar Concrete class in terms of memory consumption in C#?
body: <p>I have two classes as such:</p>
  
  <pre><code>public abstract class A
  {
    public int TheInt {get;set;}
    public string GetString(double dbl)
     {
         return dbl.ToString();
     }
  }
  
  public class B
  {
    public int TheInt {get;set;}
    public string GetString(double dbl)
     {
         return dbl.ToString();
     }
  }
  </code></pre>
  
  <p>And I have two other classes each deriving from either A or B as such:</p>
  
  <pre><code>public class C : A
  {
  }
  
  public class D : B
  {
  }
  </code></pre>
  
  <p>And I have two objects as this:</p>
  
  <pre><code>C objC = new C();
  D objD = new D();
  </code></pre>
  
  <p>Will there be any difference in terms of memory consumption between objC and objD? Please explain.</p>