title: Invoke function in parent abstract class from child class in my case
body: <p>I have a <strong>abstract</strong> class:</p>
  
  <pre><code>public abstract class Parent{
  
      public void cook(){
          DoSomething(); //call abstract method
      }
  
      protected abstract void DoSomething();
  
  }
  </code></pre>
  
  <p>I have a concrete class which imiplements the above abstract class:</p>
  
  <pre><code>public Child extends Parent{
     private Toy toy;
  
     public void initToy(){
        toy.setOnPlayListener(new OnPlayListener() {
              @Override
              public void onPlay() {
                  //How to call parent class cook() method here?
              }
          });
     }
  
     @Override
     public void DoSomething(){...}
  }
  </code></pre>
  
  <p>I want to call the <code>cook()</code> method of <code>Parent</code> class <strong>under current Child instance</strong> in the override <code>onPlay()</code> function of <code>OnPlayListener()</code> in <code>Child</code> class. How to do it?</p>
  
  <p><strong>========Update=======</strong></p>
  
  <p>Thanks for your answers, now I would like to make it clear, are <code>Child.super.cook()</code> &amp; <code>Child.this.cook()</code> the same thing ??</p>