Empty method over-rides

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
Line 5: Line 5:
 
[[Image:Empty-method-override.png]]
 
[[Image:Empty-method-override.png]]
  
Important Points:
 
 
* The Dog class has a basic bark() method.
 
* The Dog class has a basic bark() method.
 
* This has been overridden to give slightly different behavior in the LoudDog and QuietDog classes.
 
* This has been overridden to give slightly different behavior in the LoudDog and QuietDog classes.
 
* QuietDogs don't bark at all, so the QuietDog.bark() method is empty.
 
* QuietDogs don't bark at all, so the QuietDog.bark() method is empty.

Revision as of 04:12, 1 August 2009

Empty method overrides occur when some part of an interface is not relevant to some specific implementation. This can occur when implementing interfaces or inheriting from some class. In this situation it is tempting to override the method with an empty implementation which does nothing. Often the goal is to maintain polymorphism despite the fact that it would seem the interface doesn't fit well.

Example

Empty-method-override.png

  • The Dog class has a basic bark() method.
  • This has been overridden to give slightly different behavior in the LoudDog and QuietDog classes.
  • QuietDogs don't bark at all, so the QuietDog.bark() method is empty.
Personal tools