
import文を使わない場合
import文を使わなかった場合は、他のパッケージのメソッドを使いたい場合は、下記のようにFQCN(完全限定クラス名)としてメソッドを記述しなければなりません。
1 |
Strig result = パッケージ名.クラス名.メソッド名(); |
こういう構文だと、見た目もなんだか冗長な感じがしますし、そもそも書くのがめんどくさいですよね。
import文の構文
最近のEclispeでは、ほとんど自動でソースコードを生成してくれるので、import文自体をあまり意識する必要はないかもしれませんが、下記のような構文になります。
1 |
import パッケージ名.クラス名; |
また、パッケージに属するクラスを全てimportしたい場合は下記のように記述します。
1 |
import パッケージ名.*; |
importすれば下記のようにパッケージ名を省略して記述することが可能です。
1 |
Strig result = クラス名.メソッド名(); |
static importとは?
Java5から追加された外部クラスのstaticメンバをインポートするための機能のことです。
構文
通常のimport文にstaticをつけます。
1 |
import static パッケージ名.クラス名; |
1 |
import static パッケージ名.*; |
importすれば下記のようにパッケージ名だけでなく、クラス名も省略して記述することが可能です。
1 |
Strig result = メソッド名(); |
staticなメンバはクラスのインスタンス化なしでアクセスができるのでこのような呼び出し方ができるというわけですね。
例
「com.xxx」パッケージのFileクラスのopenメソッドへアクセスが可能にする。
1 |
import static com.xxx.File.open; |
「com.xxx」パッケージのTestクラスの全てのメソッドや全てのstaticな変数へアクセスが可能にする。
1 |
import static com.xxx.Test.*; |
static importの注意点
あくまで、static importでimportして使うことができるのは、「staticなメンバ(メソッド、変数)」のみです。
クラス変数や、クラスメソッドに対しては使うことができないので、ご注意を。
staticメンバについての解説は下記の記事でもしていますので、不安であればご覧下さい。必要に応じて使っていきましょう。
この記事へのコメントはありません。