java cannot find symbol の原因と解決方法【初心者向け】

この記事は約2分で読めます。
記事内に広告が含まれています。

Javaでコンパイル時に次のようなエラーが出たことはありませんか?

error: cannot find symbol

この記事では、

  • cannot find symbol の意味
  • よくある原因
  • 正しい解決方法

を初心者向けにわかりやすく解説します。


✅ 結論:存在しない名前を使っている

cannot find symbol は、

「その名前は見つかりません」

という意味です。

変数名・メソッド名・クラス名などが間違っていると発生します。


よくある原因①:スペルミス

String name = "Taro";
System.out.println(neme);

nameneme と書いてしまっています。

このようなスペルミスで cannot find symbol が発生します。


よくある原因②:変数を宣言していない

System.out.println(age);

age を宣言していない場合もエラーになります。

正しい書き方

int age = 20;
System.out.println(age);

よくある原因③:import していない

List<String> list = new ArrayList<>();

ListArrayList を import していない場合、
cannot find symbol が出ることがあります。

解決方法

import java.util.List;
import java.util.ArrayList;

を追加します。


よくある原因④:スコープの問題

if (true) {
    int number = 10;
}

System.out.println(number);

number は if ブロックの中だけで有効です。
外では使えません。


解決のチェックリスト

cannot find symbol が出たら、次を確認しましょう。

  • スペルは正しいか?
  • 変数やメソッドを宣言しているか?
  • import を書いているか?
  • スコープの外で使っていないか?

まとめ

  • cannot find symbol は「その名前は見つからない」という意味
  • スペルミスや未宣言が原因のことが多い
  • import やスコープも確認する

このエラーが出たら、

「名前が正しく存在しているか」

をまず確認しましょう。

コメント

タイトルとURLをコピーしました