作成日:2009.07.17
更新日:2009.07.17

つまずき.java

トップページ

コンパイルエラー
実行時エラー
C:\> javac Test.java

Test.java:5: シンボルを見つけられません。
シンボル: クラス string
場所    : Test の クラス
                string s = "abc";
                ^
Test.java:8: シンボルを見つけられません。
シンボル: 変数 str
場所    : Test の クラス
                str = "xyz";
                ^
Test.java:13: シンボルを見つけられません。
シンボル: 変数 i
場所    : Test の クラス
                System.out.println( i );
                                    ^
Test.java:16: シンボルを見つけられません。
シンボル: クラス ArrayList
場所    : Test の クラス
                ArrayList list = new ArrayList();
                ^
Test.java:16: シンボルを見つけられません。
シンボル: クラス ArrayList
場所    : Test の クラス
                ArrayList list = new ArrayList();
                                     ^
Test.java:20: シンボルを見つけられません。
シンボル: コンストラクタ StringBuilder(boolean)
場所    : java.lang.StringBuilder の クラス
                StringBuilder sb = new StringBuilder( false );

[ 頻出度 ]
★★★
[ 原因 ]
使用しようとしているクラス、変数、メソッドが存在しないか
見つけられないため出力されるメッセージです。

原因として以下のことが考えられます。

  • クラス名や変数名、メソッド名のタイプミス
  • 変数などを宣言せずに使用しようとしている
  • スコープの範囲外で変数を使用しようとしている
  • importしていないためクラスが見つからない
  • メソッドの引数が間違っている


  • 以下のコードはその例です。

    class Test{
    	
    	public static void main(String[] args){
    		// stringクラスは存在しない(正しくはString)
    		string s = "abc";
    		
    		// 変数 str は宣言されていない
    		str = "xyz";
    		
    		// 変数 i のスコープの外で変数 i を使用しようとしている
    		for( int i=0; i<10; i++ ){
    		}
    		System.out.println( i );
    		
    		// java.util.ArrayList が import されていない
    		ArrayList list = new ArrayList();
    		
    		// StringBuilderクラスに boolean を
    		// 引数にとるコンストラクタは存在しない
    		StringBuilder sb = new StringBuilder( false );
    	}
    }
    

    [ 対処 ]