What are the advantages/disadvantages of using one of the following styles over the other for declaring a method from an abstract parent class:
OPTION 1:
Parent Class:
protected Object retrieve(String id, Object model){
return null;
}
Child Class:
@Override
public String retrieve(Object model) {
if (model instanceof Car)
// ... somehow get id ...
return getInfo(id, (Car)model);
return null;
}
or...
OPTION 2:
Parent Class:
protected abstract Object retrieve(String id, Object model);
Child Class:
public String retrieve(String id, Object model) {
if (model instanceof Car)
return getInfo(id, (Car)model);
return null;
}