final宣言されているクラスをextendsしたクラスを作成してはいけない。なにを当たり前のことを言っているかと思うだろうが、Doja(iAppli)で開発する際にはまった。状況は以下のとおり。
AnchorButtonをextendsしてラベル文字列が取り出せるサブクラスを作成した。これをDoja3.0の開発ツールでコンパイルすると問題なくコンパイルできる。エミュレータでも問題なく実行可能。
だが、実機にもってくると「αエラーが発生しました」とのメッセージがでる(D505iの場合)。エクセプションもあがってこないので、トレースを見ることもできない。理由がさっぱり分からない。
エラーの出る箇所を絞り込むべくあちこちのブロックを取り出してはjarに固め、実機に送り込みテスト。ああパケ代がとんでいく。無駄に。で、分かった。
public final class AnchorButton