title: Class subclass type with a public method
body: <p>I don't understand why in Subclass definition a public method is involved</p>
  
  <pre><code>class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
  </code></pre>
  
  <p><strong>Source code of the RecyclerView.ViewHolder</strong></p>
  
  <pre><code>public abstract static class ViewHolder {
  
  
      public ViewHolder(View itemView) {
          if (itemView == null) {
              throw new IllegalArgumentException("itemView may not be null");
          }
          this.itemView = itemView;
      }
  </code></pre>