回答:
Ctrl-2 L(新しいローカル変数への割り当て)とCtrl-2 F(新しいフィールドへの割り当て)について誰も言及していないようですが、これらにより、コードの記述方法が変更されました。
以前は、次のように入力していました(|はカーソルの場所です)。
Display display = new |
次に、Ctrl-Spaceを押して、コンストラクターの呼び出しを完了します。今私はタイプします:
new Display()|
Ctrl-2 Lを押すと、次のようになります。
Display display = new Display()|
これは本当にスピードアップします。(Ctrl-2 Fも同じことを行いますが、新しい変数ではなく新しいフィールドに割り当てます。)
もう1つの良いショートカットはCtrl-2 Rです。ファイル内で名前を変更します。ローカル変数などの名前を変更する場合は、名前変更リファクタリング(Alt-Shift-R)よりもはるかに高速です。
実際、私はキーのカスタマイズ設定ページに行き、あらゆる種類の追加のクイックフィックスをCtrl-2-somethingに割り当てました。たとえば、Ctrl-2 Jを押して変数宣言を分割/結合し、Ctrl-2 Cを押して内部クラスをトップレベルに抽出し、Ctrl-2 Tを押して関数にスロー宣言を追加します。修正するには、お気に入りのものを選択し、Ctrl-2ショートカットに割り当てます。
私の「npe」テンプレートでの私のもう1つのお気に入りは、次のように定義されています。
if (${arg:localVar} == null)
throw new ${exception:link(NullPointerException,IllegalArgumentException)}("${arg:localVar} is null");
これにより、すべての関数(特に、引数をフィールドに保存するか、コレクションに追加するもの、特にコンストラクター)の最初にnull引数チェックをすばやく追加できます。これは、バグを早期に検出するのに最適です。
www.tarantsov.com/eclipse/templates/でさらに役立つテンプレートを参照してください。多数あり、新しいものを追加することが多いので、ここではすべてを記載しません。
いくつかのコード補完トリック:
これは、フィールドを追加する方法です。
まだコンストラクターがない場合は、コンストラクターを追加します。(クラス宣言の任意の場所でCtrl-スペース、最初の提案を選択してください。)
引数を追加します(|はカーソル位置です):
public class MyClass {
public MyClass(int something|) {
}
}
Ctrl-1を押し、「新しいフィールドに割り当てる」を選択します。あなたが得る:
public class MyClass {
private final Object something;
public MyClass(Object something) {
this.something = something;
}
}
必要に応じてnullポインターチェックを追加します(上記の「npe」テンプレートを参照)。
public class MyClass {
private final Object something;
public MyClass(Object something) {
npe|
this.something = something;
}
}
Ctrl-Spaceを押して、以下を取得します。
public class MyClass {
private final Object something;
public MyClass(Object something) {
if (something == null)
throw new NullPointerException("something is null");
this.something = something;
}
}
素晴らしい時間節約!
ctrl-shift-rとそのバディctrl-shift-tは、それぞれリソースまたはタイプを開きます。リソースには、開いているプロジェクト内のすべてのファイル(非Javaファイルを含む)が含まれ、タイプには、プロジェクト内またはプロジェクトに含まれているライブラリ内のJavaタイプが含まれます。
Ctrl+ Shift+ Oインポートを整理し、適切にフォーマットし、不要なインポートを削除し、不足しているインポートを追加します。
メソッドの宣言で戻り値の型をクリックすると、メソッドのすべての出口点が強調表示されます。
例えば:
1: public void foo()
2: {
3: somecode();
4: if ( blah ) return;
5:
6: bar();
7: }
voidをクリックすると、4行目のリターンと7行目の}が強調表示されます。
更新:try {}キャッチブロックでも機能します。カーソルをcatchブロックの例外に置くと、Eclipseはその例外をスローする可能性のあるメソッドを強調表示します。
開始中括弧とセミコロンを「正しい」位置に自動的に配置するオプションがあります。これを有効にする必要があります-[ウィンドウ/設定]を選択し、検索ボックスに「brace」と入力します-簡単に見つけられるはずです(このコンピューターでは日食はありません)。の効果:
(「|」はカーソルです):
if(i==0|)
「{」と入力すると、
if(i==0) {|
Emacsに触発されたヒッピーエキスパンド/ワードコンプリート。Javaコード内の文字列リテラル内部、xmlファイル内、どこでもオートコンプリート。
Alt + /
Alt-Shift-Rはリファクタリングではなく、renameを意味します。リファクタリングはより一般的な用語です(本で定義されています)。
それにもかかわらず、それは私のお気に入りのリファクタリングの1つです。その他は次のとおりです。
ローカル変数の抽出は、メソッドの結果のタイプを覚えていない(またはタイプするのが面倒な)場合に特に便利です。JdbcTemplate createJdbcTemplate()
クラスにメソッドがあると仮定して、次のようなコードを記述します。
void someQuery() {
createJdbcTemplate()
}
式を選択し、createJdbcTemplate()
Alt-Shift-Lをクリックし、変数の名前を入力してEnterキーを押します。
void someQuery() {
JdbcTemplate myTemplate = createJdbcTemplate();
}
Ctrl+ Shift+ M:クラスの静的メソッドまたは静的属性参照を静的インポートに変更します。
前
import X;
...
X.callSomething();
後
import static X.callSomething;
...
callSomething();
誰もまだ最高のものについて言及していません。クラスまたはメソッド名をクリックして、Ctrl+ を押しTます。
簡単なタイプ階層が得られます。クラス名については、クラス階層全体が表示されます。メソッド名の場合、スーパークラスとサブクラスを示す階層が得られ、そのメソッドの実装は、抽象的言及、またはメソッドを言及しないクラスと区別されます。
これは、抽象メソッド宣言にいて、すぐにそれが実装されている場所を確認したい場合に非常に役立ちます。
F3 私のお気に入りで、選択したアイテムの定義を開きます。
Ctrl+ Shift+ Rには興味深い機能があり、検索時にクラスの大文字のラクダ文字のみを使用できます(たとえば、CWARと入力すると、ClassWithAReallyLongNameの結果が表示されます)。
Alt+ Shift+ W>パッケージエクスプローラーを使用すると、大規模なプロジェクトを簡単に閲覧できます。
どこでも、どこでも、CTRL + SPACE。
ゲッターとセッターを生成します。
フィールドを使用してコンストラクタを作成する
メソッドの抽出...
リファクタリング->名前変更
CTRL + Oで簡単なアウトラインを表示。継承されたアウトラインのCTRL + O + CTRL + O。
タイプ階層を表示するF4
呼び出し階層を開いて、メソッドの呼び出し元を表示します。
CTRL + SHIFT + TでJavaタイプを開きます
Ctrl + Shift + Rキーでリソースを開きます。
ALT +左または右でドキュメントの編集場所を前後に移動できます(簡単なナビゲーション)
多くのメソッドを実行することがわかっている場合は、メソッドをオーバーライド/実装します(そうでない場合は、一度に1つ選択する場合はCTRL + SPACEの方が適しています。
リファクタリング->インターフェースの抽出
リファクタリング->プルアップ
リファクタリング->プッシュダウン
CTRL + SHIFT + Oでインポートを整理します(マップなどの一般的なクラス名を入力し、CTRL + SPACEを押してから適切なクラスを選択すると、直接インポートされます)。
フォーマット用のCTRL + SHIFT + F(Eclipseの組み込みフォーマッターは、長いコード行では少し頭が痛くなる可能性があります)
編集:ああそう、いくつかのデバッグ:
F5:ステップイン(詳細を表示!)
F6:ステップオーバー(次のパートに進みます...)
F7:ステップアウト(私はこの方法を気にかけていたと思いましたが、私はここから出て行かないでください!)
F8:再開(次のブレークポイントに到達するまで移動)
CTRL + SHIFT + I:式を調べます。CTRL + SHIFT + I + CTRL + SHIFT + I:検査された式に監視式を作成します。
条件付きブレークポイント:ブレークポイントを右クリックすると、プログラムの実行を中断するトリガーとなる条件を設定できます(Ctrl + Spaceを使用したコンテキストアシストはこちらから利用できます)。
F11-最後に起動したデバッグ(アプリケーション)
CTRL + F11-最後に起動したものを実行(アプリケーション)
Eclipseでは、例外が発生した場所に基づいてブレークポイントを設定できます。
オプションには「j!」 からアクセスします デバッグウィンドウの代替テキストhttp://help.eclipse.org/stable/topic/org.eclipse.jdt.doc.user/images/org.eclipse.jdt.debug.ui/elcl16/exc_catch.pngアイコン。
代替テキストhttp://blogs.bytecode.com.au/glen/2007/04/06/images/2007/AddExceptionWindow.png
公式ヘルプトピック「Java例外ブレークポイントの追加」には、これについての詳細があります。
RuntimeException
がサブクラスで一時停止するように構成されている場合、それもによってトリガーされますNullPointerException
。Ctrl+ Alt+ Hメソッドの呼び出し階層を取得するメソッド。それがどこから呼び出されたかを確認する高速な方法。
Ctrl+ Alt+ UPまたはCtrl+ Alt+ DOWN行をコピーするには
Alt+ Shift+ Rリファクタリングして名前を変更します。
以下は、Eclipse 3の最も便利なキーボードショートカットのコレクションです。
Eclipse 3 Favorite Keyboard Shortcuts.
by -=MaGGuS=-
Navigate:
• Ctrl + Shift + L – Shows useful keyboard shortcuts in popup window
• Ctrl + H – Search.
• Ctrl + K – Goes to next search match in a single file. Shift + Ctrl + K – goes to previous match.
• F3 - Goes to ‘declaration’ of something. Same as Ctrl + Click.
• Ctrl + Shift + G - Use this on a method name or variable. It will search for references in the code (all the code) to that item.
• Ctrl + O – Shows outline view of the current class or interface.
• Ctrl + T – Shows class hierarchy of the current class or interface. F4 – shows the same in separate tab.
• Ctrl + Shift + T - Open Type. Search for any type globally in the workspace.
• Ctrl + Shift + R – Open Resource. Search for any file inside workspace.
• Ctrl + J – Incremental search. Similar to the search in firefox. It shows you results as you type. Shift + Ctrl +J - Reverse incremental search.
• Ctrl + Q – Goes to the last edit location.
• Ctrl + Left|Right – Go Back/Forward in history.
• Ctrl + L – Go to line number.
• Ctrl + E – This will give you a list of all the source code windows that are currently open. You can arrow up or down on the items to go to a tab.
• Ctrl +PgUp|PgDown – Cycles through editor tabs.
• Ctrl + Shift + Up|Down - Bounces you up and down through the methods in the source code.
• Ctrl + F7 – Switches between panes (views).
• Ctrl + ,|. – Go to the previous/next error. Great in combination with Ctrl + 1.
• Ctrl + 1 on an error – Brings up suggestions for fixing the error. The suggestions can be clicked.
• Ctrl + F4 – Close one source window.
Edit:
• Ctrl + Space – Auto-completion.
• Ctrl + / – Toggle comment selected lines.
• Ctrl + Shift + /|\ – Block comment/uncomment selected lines.
• Ctrl + Shift + F – Quickly ‘formats’ your java code based on your preferences set up under Window –> Preferences.
• Ctrl + I – Correct indentations.
• Alt + Up|Down – move the highlighted code up/down one line. If nothing is selected, selects the current line.
• Ctrl + D – Delete row.
• Alt + Shift + Up|Down|Left|Right – select increasing semantic units.
• Ctrl + Shift + O – Organize Imports.
• Alt + Shift + S – Brings up “Source” menu.
o Shift + Alt + S, R – Generate getter/setter.
o Shift + Alt + S, O – Generate constructor using fields.
o Shift + Alt + S, C – Generate constructor from superclass.
• Alt + Shift + T – Brings up “Refactor” menu.
• Alt + Shift + J – Insert javadoc comment.
• F2 – Display javadoc popup for current item. Shift + F2 – Display javadoc in external browser.
Run/Debug:
• F11 / Ctrl + F11 – Execute/debug.
• Ctrl + Shift +B – Toggle breakpoint.
• When paused: F5 – Step into, F6 – Step over, F7 – Step out, F8 – Resume.
• Ctrl + F2 – Terminate.
EOF
それほど隠されていませんが、IMOは最高のトリックです。
デフォルト設定を想定している(そして新しいスニペットを追加していない)
テキスト(文字列または変数)を強調表示(または選択)します... Ctrl + Spaceを押します。End + Enterを押します。「sysout」スニペットがトリガーされ、選択をパラメーターとしてラップします。
例えば。
"hello world!"
becomes
System.out.println("hello world!");
AndroidのToastとLog.i()に同様のスニペットを実装したので、手動デバッグ中に時間を大幅に節約できました。