- PR -

import時の処理について

1
投稿者投稿内容
takashi
会議室デビュー日: 2003/01/27
投稿数: 7
投稿日時: 2003-05-20 21:14
初めて投稿いたします。

importにて、java.util.*を使用した場合と
直接指定したjava.util.Randomの場合ではコンパイルが通らない場合があります。
java.util.*指定時にはエラー、直接指定では通ります。
ためしに別のマシンにて実行したところ、どちらも問題なくコンパイル出来ました。

マシンに依存した何かがあると思うのですが、ちょっと分かりませんでした。
どなたか似たような現象になった方がいましたら、解決方法等教えていただけますでしょうか。

よろしくお願い致します。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2003-05-20 21:19
>importにて、java.util.*を使用した場合と
直接指定したjava.util.Randomの場合ではコンパイルが通らない場合があります。
java.util.*指定時にはエラー、直接指定では通ります。
ためしに別のマシンにて実行したところ、どちらも問題なくコンパイル出来ました。

こういう場合、まずエラーメッセージを載せましょう。
推測ですが、おそらく「Randomクラスが特定できない」という意味のメッセージでは
ないでしょうか。コンパイルできない環境にはデフォルトパッケージのRandomクラスが
あるのではないかと思います。
takashi
会議室デビュー日: 2003/01/27
投稿数: 7
投稿日時: 2003-05-20 22:22
ukさん、返答ありがとうございました。
申し訳ありません、あまり慣れていないもので。
エラーメッセージを載せますので、よろしくお願い致します。
Aaa.java:15: シンボルを解決できません。
シンボル: メソッド nextGaussian ()
場所 : Random の クラス
total += generator.nextGaussian();

上記エラーが発生した部分のソースは下記になります。
// 乱数を生成する
Random generator = new Random();
double total = 0;
for(int i = 0; i < count; i++) {
total += generator.nextGaussian();
}

この例はRandomクラスですが、Randomクラス以外(java.util.date)などでも
import java.util.*でコンパイルするとエラーになってしまいます。

よろしくお願い致します。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-05-21 09:48
はじめまして、Wataです。
私も、ukさんが指摘していることが原因のような気がするのですが、
Aaa.javaと同じフォルダにRandom.javaが無いことは確かめたのでしょうか?
(この場合、"シンボルを解決できません。"のエラーが出ます。)
Dateクラスだと、java.sql.Dateとバッティングする可能性もあります。

Random, Dateに限らず、全てのutilパッケージで同じ現象が起こるとしたら、
ちょっと見当がつかないですが、Eclipseを使ってRandomの宣言を開いてみれば
一発で原因解決するかもしれないですよ。
takashi
会議室デビュー日: 2003/01/27
投稿数: 7
投稿日時: 2003-05-21 18:13
Wataさん、返答ありがとうございました。
Aaa.javaと同一のフォルダにご指摘のあったようにRandom.javaが存在していました。
Random.javaを削除し、コンパイルしたところ問題なく実行出来ました。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)