テスト目的のために、私はしばしば既存のプロジェクトにいくつかのコードを入力し始めます。Javaコンパイラ:デッドコードについて不平を言わない
public static void main(String[] args)
{
char a = '%';
System.out.println((int)a);
// To know where '%' is located in the ASCII table.
// But, of course, I don't want to start the whole project, so:
return;
// The real project starts here...
}
をしかし、コンパイラは、次の理由「デッドコード」の、return
-statement文句:だから、私がテストしたい私のコードは次のように、他のすべてのコードの前に来ます。私はそれを嫌う
if (0 != 1) return;
:(C++のコンパイラは、プログラマに従うと、単にreturn文コンパイルしながら)コンパイラを防止するために
は文句を、私は愚かなif
-statementを書きます。なぜコンパイラは私が尋ねたことをすることができないのですか?私の問題を解決するためのコンパイルフラグや注釈などがありますか?
ありがとうございました
私は外部クラスでテストを行うことをお勧めします、Junitテストは解決策になる可能性があります。 – reef
@reef彼はユニットテストではなく「実験」を意味すると思います – Rup
JavaはCとは異なるデザイン哲学を持っています。Cでは明示的に禁止されていないことはすべて許されています。問題)。 Javaは、意味を持たないことをしないようにしようとし、コードが実行されないことが分かっている場合は叫びます。それともそうであってもそうではありませんが、それはそうです。 –