CodeCoachでは、クラス修飾子を安全に変更できる場合にアドバイスが提供されます。
CodeCoachから提供されるクラス・アドバイスには2種類あります。
finalクラスでは、すべてのメソッドはfinalと考えられます。finalメソッドはインライン処理ができ、さらに重要な点は、メソッド表を使用せずに直接コールできることです。
また、クラスにfinalを宣言すると、一般に負荷のかかるinstanceofまたはcheckcastの操作をJVMで実行しやすくなります。
CodeCoachでfinalを宣言できるクラスが検出された場合、このクラスのメソッドにはfinalメソッド・アドバイス(MFIN
)は提供されません。
今後クラスを拡張する可能性がある場合は、このアドバイスに従う必要はありません。
finalとできる可能性のあるクラスのアドバイスのキーワードはCFIN
です。
内部クラスが外部クラスのstatic以外のフィールド、メソッドまたはオブジェクトにアクセスする場合、この内部クラスをstaticにすることはできません。
staticとできる可能性のあるクラスのアドバイスのキーワードはCSTA
です。
クラスがCodeCoachを介して実行されていても、デバッグ情報がクラスに含まれていない場合、CodeCoachにより次の警告が表示されます。
Class classname must be compiled with debug info to
enable CodeCoach
このメッセージが表示されないようにするには、そのクラスをCodeCoachから除外するか、デバッグ情報を有効にしてコンパイルする必要があります。デバッグ情報を有効にするには、「プロジェクト・プロパティ」ダイアログでオプションを選択(「コンパイラ」タブで「デバッグ情報を含める」を選択)するか、コマンドラインでojcの-g
スイッチを使用します。すべてのサード・パーティ製クラスは、除外する必要があります。
Copyright © 1997, 2004, Oracle. All rights reserved.