第二十一章 コマンドラインから入力する
Javaクラスライブラリの利用
Javaクラスライブラリのクラスをインポートします。
import java.io.Console;
目次
1.Javaクラスライブラリの利用
Sample21_01.java
//Sample21_01.java
import java.io.Console;//Consoleクラスを使うことを宣言
public class Sample21_01 {
public static void main(String[] args) {
Console cons = System.console();
String str = null;
if (cons != null) {
str = cons.readLine("input: ");
}
System.out.println("echo : " + str);
}
}
他の package(パッケージ)にあるクラスにアクセスするには、
アクセスするクラスをimportをする必要があります。
そうゆうの
あったわね。
Javaには、便利なクラスが予め収録されています。
Javaクラスライブラリ(JCL)と呼びます。
Javaクラスライブラリを利用する際も、import が必要です。
Javaクラスライブラリ
Javaに予め収録されているクラスを
Javaクラスライブラリ(JCL)
と呼びます。
サンプルでは、Javaクラスライブラリの
Console.class をインポートしている。
Javaフォルダの場所は別として、
以下のような位置関係だ。
Console.classの位置
java (パッケージ)
└----io (パッケージ)
└----Console.class
java.io.Consoleクラス
2.ワイルドカード「*」
クラス名の代わりに「*」(アスタリスク)と記述すると、パッケージ内のすべてのクラスを importできます。
「*」でimport
import Java.io.*;
この方法は、ひとつのパッケージから
たくさんのクラスを importするときに
綺麗に書ける。
おっ!
便利っすね!
ただ、クラス名まできちんと表記するのが
行儀よいとされている。
パッケージが異なる同名のクラスは、実は結構あるんです。
たくさんのパッケージを利用する場合には、丁寧に書いたほうがいいかもしれません。
う〜ん...。
3.java.lang はimport免除
java.langパッケージに収録されているクラスは、importの記述を免除されます。
import java.lang.* は記述不要
import java.lang.*
が文頭に記載されているものとしてコンパイルされるので、
java.lang に収録されたクラスは、importの必要がありません。
Systemクラスは、java.langパッケージに収録されています。
importの必要はありません。
System.out.println()でおなじみですね。
java.lang.Systemクラス
今まで使ってきた「String」や
「ラッパークラス」は、
java.langパッケージの所属だ。
Consoleクラスは java.ioパッケージの
所属なので、
importが必要なんだ。
使うクラスがどこにあるかは
知らないといけないってことっスか?
まあね。
ちなみに私も
しょっちゅうググってる。
お疲れ様でした。