Android開発の学習をはじめてみたのだが、どうも開発ツールEclipseのバグで、つまずくことが多いのでメモ。
10年ほど前にJavaの勉強したときには無かったのだが、今はアノテーションというコンパイルエラーを事前検知する便利な構文が用意されている。@Override というやつ。これは、以降のメソッドは、親クラスのメソッドをオーバーライドしますよと宣言。何がいいかというと、オーバーライドしたつもりがスペルを間違えたりして、意図しないメソッドを追加してて、誤って親のメソッドを呼び出してても、開発者も開発ツールも気づかないなんてことを防いでくれる。
だけど、@Overrideを記入しても、しなくても、慎重にプログラミングすればコンパイルエラーにはならないはずなのに、Eclipseから「親のメソッドがオーバーライドされてません」というメッセージが出ることがある。アノテーションとEclipseのコンパイルエラー検知機能が混乱してる感じ。
仕方ないので、Eclipseの指示に従おうと、右クリックして「必要なメソッドの自動追加」をクリックして、メソッド名など自動入力されたところに、今までコンパイルエラーになってたプログラムをコピペすると、すんなり解決。
こんなことで2時間悩んだ。開発ツールや機種のご機嫌を伺うのが、プログラミングだったな、と再実感。
0 件のコメント:
コメントを投稿