- - PR -
使用時Class名の重複
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-11-26 14:36
いつも拝見させて頂いております。
現在java,strutsの勉強をしています。 そこで質問させていただきます。 現在下記の様なことで困っています。 package jp.co.example; という階層にLevelという名前のClassを作成しました。 import jp.co.example.Level; import org.apache.log4j.Logger; とした時に logger.setLevel(Level.DEBUG); でLevelというclass名がバッティングしてしまいます。 このような時は皆様はどのように回避するのでしょうか? 単純に自分が使うclassの名前を変えればよいのですが 修正等時間も掛かりますし修正ミスも起こると思います。 よろしくお願い致します。 | ||||
|
投稿日時: 2004-11-26 14:43
この場合だと、単にLevelと指定した場合はjp.co.example.Levelクラスだと認識しますよね。 パッケージの異なる同名のクラスを同じクラス内から参照する場合は、完全修飾名で宣言する しかありません。 | ||||
|
投稿日時: 2004-11-26 14:46
大変早いレスありがとうございます。
やはり下記のように完全修飾名にするしかないのですね。 logger.setLevel(org.apache.log4j.Level.DEBUG); 勉強になりました。 ありがとうございました。 | ||||
|
投稿日時: 2004-11-27 03:48
蛇足ですが、J2SE5.0からでしたら
import static org.apache.log4j.Level.DEBUG; と定義すれば logger.setLevel(DEBUG); と書けますね。 でも、重複させないことが一番賢明だろうとは思います。 | ||||
|
投稿日時: 2004-11-27 12:37
さらに蛇足ですが、
java.sql.Dateとjava.util.Dateを 両方使うときとかも気をつけてください。 よく聞く話ですので。。。 |
1