java - Calling super method from within an anonymous inner class inside the overriden method - Stack Overflow



java - Calling super method from within an anonymous inner class inside the overriden method - Stack Overflow

Using an expression such as A.this requires that A is the directly enclosing class. In this case, it may look like A is the directly enclosing class, but in fact it's not. The directly enclosing class is the anonymous subclass of A. (I.e. A.this is an attempt to skip over the anonymous class in the hierarchy.)

In this case an expression such ____.this won't work, because your class is anonymous, which means that there's no name to put in front of .this.

The way you've solved it is reasonable in my opinion. Another way would be to create a local subclass of A as follows:

public static void main(String[] args) {        class SubA extends A {          @Override          public void m() {              System.out.println("Override - > m()");              new Thread(new Runnable() {                    @Override                  public void run() {                      SubA.super.m();                   // ^^^^ we now have a name of the directly enclosing class                  }              }).start();          }      }      A a = new SubA();      a.m();  }

Read full article from java - Calling super method from within an anonymous inner class inside the overriden method - Stack Overflow


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts