プログラムに書き間違えがあったり、実行中に異常な動作をした場合は、次のようなエラーウィンドウが表示されます。
「エラーのあった場所に移動」を押すと、エラーが起きた場所にカーソルが移動するので、原因を調べてプログラムを訂正してください。
コンパイルエラー
例1
実行時エラー
例2
例3
その他のエラー
例4
それ以外の原因としては、Tonyuシステム自身のバグが考えられます。
その際は申し訳ありませんが、Tonyuを再起動してください。
コンパイルエラーは、ページを読み込んだ時や、実行させようとしたときに発生するエラーです。
文法が正しくありません。例えば文の末尾にセミコロン(;)がないなどです。
呼び出そうとしている関数は定義されていません。関数の綴りが間違っていないか調べてみましょう。
実行方法...
//--ファイルClassA.tonyu--
extends Object;
function test(p) {
print(p);
}
testo(p); // 関数testoは未定義です
//--ClassA.tonyu終わり--
クラスの親子関係が不正です。例えば、
ClassAがClassBの親クラスで、かつClassBがClassAの親クラス
であってはいけません。
実行時エラーは、プログラム実行中に発生するエラーです。
a.method1(); のように、他のオブジェクトのメソッドを呼び出そうと
していますが、aの値がオブジェクトでない(数値やnull)ため
メソッドを呼べません。
aの値がおかしくなっていないか調べましょう。
aの綴りが間違っている場合がよくあります。綴りが間違った変数はnullとみなされます。
実行方法...
a=0;
a.run(); // 0はオブジェクトでないため、関数runを呼び出せません
Array型オブジェクトにおいてget,setメソッドなどをもちいたアクセスを行った場合に、要素を指定するための番号(添字)が範囲外です
実行方法...
a=new Array();
a.add("apple");a.add("orange");
b=a.get(3); // 配列aの要素は2つ(添字は0,1)なのに、添字の番号が3
メソッドの呼び出しが無限に行われると発生する場合があります。
実行方法...
function test(x) {
print (x);
test(x+1); // 永久にtestが呼ばれる
}
test(3);