JAVAのパッケージ
パッケージとはクラスのさらに上の概念です。
あるパッケージに属するクラスは、同じ名称であっても別のパッケージのクラスとは別物として扱われます。
「aaa」パッケージの「cde」というクラスと、
「bbb」パッケージの「cde」というクラスは、別のものと認識される。
パッケージは複数あるソースファイルを、同一のパッケージに属するものとして指定することができます。
大規模に開発をおこなったり、既にあるフリーのソースファイルを流用したりする場合には、このパッケージの概念が重要になってきます。
パッケージの設定方法
ソースコードの先頭にパッケージ名を記述することで、そのソースコードに書かれているクラスは、そのパッケージに属していることになります。
package パッケージ名;
abcという名前のパッケージに属するefgというクラスのなかのhij()メソッドを使う場合には、以下のように書きます。
int Hensu = abc.efg.hij();
なお、パッケージ名を指定しない場合には、呼び出し元と同じパッケージ内を探します。
パッケージの命名ルール
パッケージ名は、一般的なルールとして、「ドメインを反対側から記載したもの」ということになっています。
「http://xxx.yyyyy.com」の場合には、「xxx.yyyyy.com」を反対側から記載したものになります。つまり、「com.yyyyy.xxx」です。
ドメインを使う理由は、一意のものになるためです。
パッケージを会社を超えて開発したりする場合、適当に命名していた場合、バッティングする恐れがありますが、ドメインを基準にしていたらバッティングの恐れがなくなるため、このようなルールが一般化されたようです。
パッケージのインポート
ところで、別のパッケージにあるクラスを毎回パッケージ名を指定して呼び出すのは面倒なので、先にそのクラスはパッケージを指定しなくても使えるように読み込んでしまう方法があります。
それをインポートといいます。
インポートをするには、以下のように書きます。
import パッケージ名.クラス名;
インポート文は、パッケージ文の直後に書きます。
例えば、aaaというパッケージにあるbbbクラスのccc()メソッドを指定する場合、インポート文を使わないと以下のようになります。
int Hensu = aaa.bbb.ccc( i );
しかし、インポート文を使うと以下のように書くことができます。
import aaa.bbb;
public class ddd{
public static void main (String[] args){
int Hensu = bbb.ccc( i );
}
}
上記のインポート文ではaaaパッケージのbbbクラスのみをインポートしていますが、aaaパッケージのすべてのクラスをインポートする場合には、「*」を使って一文で済ませることができます。
inport aaa.*;
関連記事
JAVAのループ処理:for文
JAVAにおけるループ処理の一つとして、while文のほかに、for文というのがあります。 これはある条件を満たしている場合は決められた処理を繰り返すというところまではwhile文と一緒ですが、条件を…続きを読む
JAVAでクラスを生成する
JAVAでは、一つのソースファイル(.javaファイル)ごとに最低でも1つのpublicクラスが必要になります。 publicクラスは、1つのソースファイルに1つしか設定できません。 publicでな…続きを読む
Eclipseを使ってJAVAで”Hello World”を表示する
統合開発環境(IDE)であるEclipseを使ってJAVAプログラミングを練習していきます。第一弾は、基本中の基本である、「Hello World」を表示する、というものです。 Eclipseの使い方…続きを読む
JAVAの予約語
プログラム言語で予め使われている名前、たとえば変数の型を示す名前などは、変数名やクラス名として宣言することができません。これらの名前を予約語といいます。 予約語一覧 abstract(修飾子) ass…続きを読む
JAVAで変数を使う:変数宣言と変数の型
変数とは、プログラム内で利用される「値」を入れるための「器」です。 変数は一定の規則に従えば、任意の名前を付けることができます。 変数はどのように使うのかというと、例えば、Hensuという名前を変数を…続きを読む
JAVAでメソッドをつくる
JAVAには既に存在するメソッドのほかに、自分でメソッドを作ることができます。 自分でメソッドを作る際のルールは以下の通りです。 修飾子 戻り値の型 メソッド名(引数) { 処理 } 修飾子とは 修飾…続きを読む
JAVAで定数を定義する
JAVAでは変数を宣言した場合、変数の内容は代入する値によって変わっていきます。 しかし、プログラム上、内容を変更したくない変数がある場合には、変数宣言の前に「final」と記述します。 final …続きを読む
JAVAのループ処理:while文
ある条件を満たしている間は、決められた処理を繰り返す、という命令文が、ループ処理です。 JAVAのループ処理には以下の2つがあります。 while文 do~while文 for文 今回はwhile文に…続きを読む
JAVAの条件分岐:switch文
if文と並ぶ条件分岐の構文として、もう一つ、switch文があります。 if文が条件が真偽で処理を変える2択(elseifを付ければ複数の選択肢を持たすことができるが)であるのに対し、switch文は…続きを読む
JAVAのループ処理:do~while文
JAVAのループ文には、while文というものがあります。 while文は、条件式に合致している間、処理を続けるというものです。while文は、まず条件を判定して、その後に処理を行います。 これに対し…続きを読む