类是否可以实现接口并在该接口后面执行逻辑

时间:2014-02-07 07:11:52

标签: java class interface

美好的一天开发者。

所以有问题:

我需要我的班级MyClass使用方法IMyInterface实现接口doSomething();并覆盖方法doSomethiing()另一个类让我们调用他TheOtherClass也实现IMyInterface 1}}并覆盖方法doSomethiing()并加上实现此doSomething()方法的一些逻辑(In TheOtherClass)。

问题:

  • 如何从[{1}}触发doSomething() MyClass自动实现doSomething()方法
  • 如果TheOtherClass被调用,我希望MyClass方法自动调用??

2 个答案:

答案 0 :(得分:1)

我觉得这样的事情。

public class TheOtherClass implements IMyInterface{
  public void doSomething(){}
}

public class MyClass implements IMyInterface{

// Instance initialization block:
// Runs before the constructor each time you instantiate an object
 {
   this.doSomething()
 }

  public MyClass(){
  }

  IMyInterface theOtherClass = new TheOtherClass ();

  public void doSomething(){
    theOtherClass .doSomething();
    //Add more logic here
  }
}

而不是按照此线程link在构造函数中调用doSomething我建议使用实例初始化块阅读更多here

答案 1 :(得分:0)

你可以试试这个

1. make MyClass sub-class of TheOtherClass
2. call to super.doSumething() in MyClass's doSomething() method.

这将满足您的两个目的。 并且b'coz它将覆盖你可以改变方法中的逻辑。 详情click here