2016-08-09 18 views
2

私はintelliJ 2016.2.1を使用しています。intelliJでは、インターフェイスの実装クラスにメソッドを移動する方法は?

Iメインクラス試験における方法foo()有する:

class Test { 
    IService iService; 

    foo(){...} 

} 

IServiceは、それがクラスServiceImplを実装一つを有する、インタフェースです。 キャレットをfooに置き、移動を選択すると、intelliJはIServiceを選択することしかできません。しかし、実際には移動先としてServiceImplが必要です。

私が移動を続けると、intelliJはメソッド実装をインターフェイスIServiceに入れます。しかし、私はそこに宣言をしたい。


質問:どのように私はIServiceにそのServiceImplへのメソッドの実装、およびメソッド宣言を移動するために、)(FOOをリファクタリングしますか?

+1

私はIntellij 14を使用していますが、移動コマンドはわかりません。カット&ペーストしてみませんか? –

+1

@ NoahHerronそれはどんな声明ですか?もちろん、ツールを使用してリファクタリングを行うのは、常に**より良い代替方法です。アイデアは、あなたのIDEがメソッドがどこから呼び出されたかを正確に知っているということです。他のコードへの更新を行う可能性があります。物を動かすときに現れる問題について教えてください。その意味では、これは非常に正当な質問です。 – GhostCat

+0

@GhostCat私はこれが悪い質問だったと言っていたようにそれは外されましたか?もしそうなら、私の悪い。 IDEのずっと前の開発もありました。それはあなたがそれを修正するまでそれを壊すより良い開発者になります。 –

答えて

5

IServiceにメソッドを移動した後、リファクタリング|メンバーを下に押して... ServiceImplに移動します。

+1

それは本当に簡単かもしれません。笑。 –

関連する問題