コーディングを助けるショートカットキーと便利機能 2
フォーマットを整える([Ctrl]+[Shift]+[F])
ソースコードのインデントが揃っていないと、コードが見づらいだけでなく、思わぬバグに気付かないこともあります。そこで、ソースコード上で、[Ctrl]+[Shift]+[F]を押下すると自動で綺麗に整えてくれます。
なお、どのようにフォーマットを整えるかの設定は、Eclipseの[ウインドウ]―[設定]-[Java]―[コードスタイル]-[フォーマッター]で行います。開発プロジェクトで固有の標準化ルールがあるときは、ここで設定してください。
行のコピー/貼り付け/削除
([Ctrl]+[C]/[Ctrl]+[V]/[Ctrl]+[D])
類似のコードを参考にして実装したいときは、コピー元の対象のコードを選択し、[Ctrl]+[C]でコピーします。コピーした内容を貼り付けたいとき、[Ctrl]+[V]を押下します。またエラーになっているコードを、消してしまおうという時は、削除したい行にカーソルを移動し[Ctrl]+[D]を押下します。
すべてコメント文にする([Ctrl]+[E])
いろいろ書いていたけれど、頭の中がごちゃごちゃして、なにがなんだか分からなくなったので、一旦すべてをコメントアウトしたいというときは[Ctrl]+[/]を押下します。コメントアウトを戻すときは、コメントにした箇所を選択し、もう一度[Ctrl]+[/]を押下します。
setter/getterを自動生成する
getXXXやsetXXXなどフィールドを管理するためだけのアクセサメソッドを1つ1つ作成するのは、面倒ですよね。Eclipseには、getterおよびsetterのアクセサを自動作成する機能があります。
アクセサクラス内にフィールドを定義し、Eclipseのメニューの[ソース]―[getterおよびsetterの生成]を選択すると、各フィールドにsetter/getterを生成するためのダイアログが表示されるので、必要なメソッドを選択し、[OK]ボタンをクリックします。
なお、アクセサメソッドのように、お決まりのパターンで似たようなコードを書く必要があるコードは「ボイラープレートコード」と呼ばれています。
Java SE 8のラムダ式に変換する([Ctrl]+[1])
実装すべきメソッドがひとつだけのインターフェースを関数型インターフェースといいます。Java SE 8より前のバージョンでは、その関数型インターフェースを実装するときは「匿名クラス」を使っていましたが、どうしても、階層が深くなり、読みにくく冗長なコードになりがちでした。Java SE 8から新しく導入されたラムダ式を使えば、この関数型インターフェースをすっきり簡単に記述できます。
ラムダ式では、次の文法で処理を記述します。
( 実装するメソッドの引数 ) -> { 処理 }
匿名クラスからラムダ式に変換するには[Ctrl]+[1]を押下します。[ラムダ式に変換]という項目が表示されますので、それを選択すると、匿名クラスで書かれていた実装がラムダ式をつかった記述に自動変換されます。逆にラムダ式で記述されたコードを匿名クラスに変換することもできます。
Java SE 8は開発プロジェクトでは使っていないけど、そろそろ勉強しないといけないなという人は、Eclipseを使えば効率よくコードの確認ができます。なお、このラムダ式と匿名クラスの変換を行うには、プロジェクトの[プロパティ]―[Javaコンパイラ]でJDKのバージョンを1.8にしてください。