Overload and hide methods in Java

Posted by Marco on Stack Overflow See other posts from Stack Overflow or by Marco
Published on 2010-04-06T23:58:26Z Indexed on 2010/04/07 0:03 UTC
Read the original article Hit count: 157

Filed under:
|
|
|

Hi,

i have an abstract class BaseClass with a public insert() method:

public abstract class BaseClass {

 public void insert(Object object) {
  // Do something
 }

}

which is extended by many other classes. For some of those classes, however, the insert() method must have additional parameters, so that they instead of overriding it I overload the method of the base class with the parameters required, for example:

public class SampleClass extends BaseClass {

 public void insert(Object object, Long param){
  // Do Something
 }

}

Now, if i instantiate the SampleClass class, i have two insert() methods:

SampleClass sampleClass = new SampleClass();
sampleClass.insert(Object object);
sampleClass.insert(Object object, Long param);

what i'd like to do is to hide the insert() method defined in the base class, so that just the overload would be visible:

SampleClass sampleClass = new SampleClass();
sampleClass.insert(Object object, Long param);

Could this be done in OOP?

© Stack Overflow or respective owner

Related posts about java

Related posts about overloading