Just to clarify a bit.
First read about about callbacks.
If you have to call it yourself, it's probably not a callback.
In java, you can override a method (maybe you should read about OO concepts) like you did:
@Override
public void foo() {
}
The method foo is override in a custom class that probably extends another class (or implements an interface but in this case you have to override all the methods of the interface since they are abstract. Read more about interfaces here.) that contains a foo method itself.
class ParentClass {
public void foo() {
//do something
}
Since overriding a method mean "redefining" his behavior, if you call the foo method from your custom class extending ParentClass it will (in this case) not do anything. If you want to reach a method from a parent class, use super.
@Override
public void foo() {
super.foo(); //will call the foo method of the parent class
//add custom code here
}
Also you should read this great tutorial covering inherence in Java: http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html