interface TheadResultTarget {
void heresTheResultSquire(Object result);
}
class Runner extends Runnable {
private TheadResultTarget target;
public (TheadResultTarget target) {
this.target = target;
}
public void run() {
...
target.heresTheResultSquire(...);
}
}
Look in package java.util.concurrent for standard definitions, implementations and more.