Java: Overriding or Overloading method?
I have a method, in a class called "PlaceParser" that extends "ModelParser": protected Place parseModel(JSONObject element) ... A Place is a sub class of Model. Should the @Override annotation be added to the above code? As the method has a different return type, does this still count as overriding the base class method with the same name and arguments / does the return type alter the 'signature'? The "ModelParser" method looks like this "ModelT" also extends "Model": protected abstract ModelT parseModel(JSONObject element) throws JSONException; Update @Jon Skeet: The base class is declared