• ベストアンサー

ファイルからの入力 Scannerクラス

ファイルの内容を読み込むプログラムをJavaで作成しています。 Scannerクラスを利用するため、以下のようにimport宣言しました。 package bc; import java.util.Scanner; class FileScanner {  コンストラクタ{   }  メソッド{   }    :    :  mainメソッド{   } } という感じで書いているのですが、この場合のメソッド名は、 Scannerクラスで定義されている名前でないとダメなのでしょうか? 自分で作った名前でメソッドを定義したのですが、 Scannerクラスで定義されていません。 というようなエラーが返ってきてうまくいきません。 どなたか、ご教授くださいm(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • PED02744
  • ベストアンサー率40% (157/390)
回答No.2

ANo.1さんのおっしゃるとおりで、何をおっしゃっているのかよくわからないのですが、 Javaのクラスに関して、根本的なところで勘違いがありそうです。 Scannarクラスに動作をさせたいというプログラムなのですから、 Scannerクラス内のメソッドを書かないで動作するはずがないと思うのですが。 もちろん、あなたが作ったメソッドの中でScannerクラスのメソッドを呼ぶようにすればできます。 Javaから離れて、一般的な話をすると、 「あなた」が「電話」をかける場合、 「あなた」が「電話」の「送話部」を「耳にあてる」 「あなた」が「電話」の「ボタン」を「押す」 わけです。 ここで、JAVAのオブジェクト指向風にいうと 「あなた」:mainメソッドを含んだあなたが作成したクラス 「電話」:Scannerクラス 「送話部」「ボタン」:Scannerクラス内の各メンバ変数 「耳に当てる」「押す」:Scannerクラス内の各メソッド となります。 どんなにがんばっても「あなた」が「電話」になることはないわけで あなたが勝手に作ったメソッドを呼んでScannerクラスが動作することはないのです。

sedrft
質問者

お礼

とても分かり易いご回答、感謝致します。 勉強不足でした^^; ご教授ありがとうございます。

その他の回答 (1)

noname#44015
noname#44015
回答No.1

質問者さんが書いたコードだと,Scannerクラスをどこで利用してるのかがわかりません. importしただけじゃ意味がないですよ.

関連するQ&A