0

UserInterface常にスレッドで実行する必要があるインターフェイスを実装しようとしています (そうですRunnable)。だから私は次のようなコードを持っていSpecificInterfaceますUserInterface

UserInterface myUI = new SpecificInterface(...);
Thread thread = new Thread(myUI);
thread.start();

しかし、インターフェイスは他のインターフェイスを実装できないため、UserInterface実装できないため、これは明らかに機能しません。そして、インターフェイスを使用するポイントがRunnable無効になるため、単に実行可能にすることはできません。SpecificInterface

これを機能させるにはどうすればよいですか?抽象クラスを作成する必要がありますか、それとも UIを実装および継承する抽象クラスを作成UserInterfaceする必要がありますか? 「単純な」ソリューションが機能しない理由について、私はかなり混乱しています。RunnableInterfaceUserInterfaceRunnable

グーグルは役に立ちませんでした。私が見つけたのは、「Runnable interface」の使い方を教えてくれるリンクだけです:|

4

1 に答える 1

3

インターフェイスは他のインターフェイスを拡張できます。

interface UserInterface extends Runnable {
    void someOtherFunction();
    // void run() is inherited as part of the interface specification
}

public class SpecificInterface implements UserInterface {
    @Override
    public void someOtherFunction() {
        . . .
    }

    @Override
    public void run() {
        . . .
    }
}
于 2013-08-28T03:51:50.773 に答える