static static Fantastic! vol.3
今回も static static Fantastic だぜ!
前回、 static import の使い方を覚えた。
しかし、次のようなコードだとコンパイルエラーになる。
jp\yucchi\static_sample_3\Kyouko.java |
1 2 3 4 5 6 7 8 9 10 11 12 |
package jp.yucchi.static_sample_3; /** * * @author Yucchi */ public class Kyouko { public static int BUST = 86; public static int WAIST = 62; public static int HIP = 88; } |
jp\yucchi\static_sample_3\Meisa.java |
1 2 3 4 5 6 7 8 9 10 11 12 |
package jp.yucchi.static_sample_3; /** * * @author Yucchi */ public class Meisa { public static int BUST = 80; public static int WAIST = 60; public static int HIP = 85; } |
jp\yucchi\static_sample_3\Static_sample_3.java |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
package jp.yucchi.static_sample_3; import static jp.yucchi.static_sample_3.Kyouko.*; import static jp.yucchi.static_sample_3.Meisa.*; /** * * @author Yucchi */ public class Static_sample_3 { public static void main(String[] args) { System.out.println("Kyouko のバストは " + BUST + "センチです。"); } } |
1 |
<font size="4"></font> |
1 |
<font size="4">BUST が Kyouko.BUST か Meisa.BUST か解らないからだろう。</font> |
1 |
<font size="4">しかし、import 文のワイルドカード(スターインポート)を Kyouko クラスだけ変更してみる。</font> |
1 |
<font size="4"></font> |
1 |
1 2 3 4 |
package jp.yucchi.static_sample_3; import static jp.yucchi.static_sample_3.Kyouko.BUST; import static jp.yucchi.static_sample_3.Meisa.*; |
上記のように変更してもコンパイルエラーになると思っているあなた!なんと、コンパイルされてしかもちゃんと実行されます。(゜o゜;
run:
Kyouko のバストは 86センチです。
構築成功 (合計時間: 0 秒)
なんか不思議だ。
どうしてこんな仕様になったのか猿でも解る説明を誰かしておくれ。
Hatena タグ: Java
TAGS: Java | 2012年5月15日10:51 PM | Comment : 0