title: Baffled by a simple Debug.Log(object) -> returns "object" AND "NULL"
body: <p>After a couple of hours of tackling a nasty bug, I managed to break it all down to one single thing that I can't comprehend.</p>
  
  <p>I have a gameObject character, which has 2 component scripts.</p>
  
  <p>1) StateSwitcher (a class applying the factory design principle: it returns states depending on certain conditions of the character)</p>
  
  <p>2) General State (a class from which all states inherit, which contains general state data and behaviour</p>
  
  <p>My character inspector looks like this:
  <a href="https://i.stack.imgur.com/BYjgr.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/BYjgr.png" alt="enter image description here"></a></p>
  
  <p>As you can see, I assigned the StateSwitcher to GeneralState by simply selecting it in the inspector view.</p>
  
  <p>This is what GeneralState.cs look like:</p>
  
  <pre><code>// This class contains all fields, properties &amp; methods shared across all states
  public class GeneralState : MonoBehaviour
  {
      private void Start()
      {
          Debug.Log(StateSwitcher);
      }
  }
  </code></pre>
  
  <p><strong>This is what baffles me:</strong></p>
  
  <p><a href="https://i.stack.imgur.com/O9cvC.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/O9cvC.png" alt="enter image description here"></a></p>
  
  <p><strong>edit 1:</strong></p>
  
  <pre><code>// This class contains all fields, properties &amp; methods shared across all states
  public class GeneralState : MonoBehaviour
  {
      private void Start()
      {
          Debug.Log(StateSwitcher.GetInstanceID());
      }
  }
  </code></pre>
  
  <p>Results in this:</p>
  
  <p><a href="https://i.stack.imgur.com/Sygkw.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Sygkw.png" alt="enter image description here"></a></p>
  
  <p><strong>edit 2:</strong></p>
  
  <pre><code>// This class contains all fields, properties &amp; methods shared across all states
  public class GeneralState : MonoBehaviour
  {
      private void Start()
      {
          Debug.Log(this.GetInstanceID());
      }
  }
  </code></pre>
  
  <p>results in this:</p>
  
  <p><a href="https://i.stack.imgur.com/E3lNR.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/E3lNR.png" alt="enter image description here"></a></p>