title: Should protected fields in an Abstract super class be accessed using super or this in sub-classes?
body: <p>Suppose I have the following Abstract class.</p>
  
  <pre><code>public abstract class Account {
      protected String Id;
      protected double balance;
  
      public Account(String Id, double balance) {
          this.Id = Id;
          this.balance = balance;
      }
  }
  </code></pre>
  
  <p>And the following subclass</p>
  
  <pre><code>public class CheckingAccount {
  
      public CheckingAccount(String Id, double balance) {
          super(Id, balance)
          if(super.balance &gt; 10_000) this.balance += 200;
      }
  }
  </code></pre>
  
  <p>Both 'this' and 'super' are allowed in the context of the subclass when accessing a protected member. Is it better to use one over the other? 'super' makes it explicit where that field comes from. I understand I can just use <code>balance</code> without specifying the implicit parameter but I was just curious in terms of how this is utilized in practice if one wanted to specify the implicit parameter.</p>