CSC/ECE 517 Fall 2010/ch7 7f PW: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:
Any time an inherited class overrides a method and is required to call super() first, that is a case of this anti-pattern.  It is not a good idea to require something else being called first.
Any time an inherited class overrides a method and is required to call super() first, that is a case of this anti-pattern.  It is not a good idea to require something else being called first.


===Examples===
<pre>
<pre>
public class TestCase
public class TestCase

Revision as of 01:28, 29 November 2010

The Call Super Anti-pattern

What is the Call Super Anti-pattern

The Call Super anti-pattern shows up occasionally in object oriented code.


Any time an inherited class overrides a method and is required to call super() first, that is a case of this anti-pattern. It is not a good idea to require something else being called first.

Examples

public class TestCase
  public void setup() {
    doStuff();
  }
public class TestCaseOne extends TestCase
  public void handle() {
    super.setup();
    setupForTCOne();
  }


References

[1] Wikipedia, the free encyclopedia: Call Super, 2010. Wikimedia Foundation, Inc.: [1]

[2] MF Bliki: Call Super[2]