Re: @Override
On 7/23/2012 2:30 PM, bob smith wrote:
Is it really necessary to write @Override when you override or is this just "a good thing"?
Two benefits of @Override appear to me, one from its presence
and one from its absence:
- If you write @Override and then misspell the method name or
mess up the parameter list, Java will say "Hey, wait: There's
nothing in the superclass with this signature; what do you
think you're doing?" And then you'll say "Oops!" and fix
the problem, instead of wondering why your "overriding" method
doesn't seem to work.
- If you write a method and your IDE starts suggesting that you
ought to tag it with @Override, you'll be alerted that you've
overridden something you didn't intend to.[*]
Two benefits; that's all I see. Hence, like indentation and
Javadoc comments, not "really necessary" ...
[*] This actually happened to me earlier today. I was writing
a little Swing doodad to edit the "locations" of inventory items,
and I gave it a getLocation() method. NetBeans started clamoring
for @Override, and I realized that my doodad extended JPanel which
in turn extended JComponent, which already has a getLocation() ...
Time for "Facepalm!" and a quick name change.
--
Eric Sosman
esosman@ieee-dot-org.invalid