Javaでパッケージを宣言して使用する方法を一からわかりやすく解説!

Javaでパッケージ(package)を使うにはどうすればいいの?
パッケージの宣言の方法がいまいちわからない…
パッケージ名を取得するにはどうすればいいの?

こんにちは!フリーランスの長野です。Javaはソースコードを書くだけでは実行することはできません。

環境変数を設定したり、コンパイルする必要があります。また、1つのプログラムで複数のクラスが別々のフォルダに作成されている場合、パッケージ(package)を宣言する必要があります。

この記事では、そんなJavaのパッケージについて、以下の内容で解説していきます。

  • そもそもパッケージとは
  • パッケージの命名規則や宣言・実行方法
  • パッケージ名を取得する方法

今回はJavaのパッケージについて、わかりやすく解説します!

Javaにおけるパッケージ(package)とは

パッケージ(package)はクラスやインターフェースをグループ化して分ける仕組みです。

Javaでプログラミングをするとたくさんのクラスを作ることはよくあります。たくさんのクラスを作ると同じクラス名を付けることはできません。

しかし、グループ化して分けてさえいれば、同じクラス名を付けていても問題は発生しなくなります。また、同じ機能や関連するクラスをグループ化して分けていることで、クラスも検索し易くなり修正や改良する際に探す手間も省くことができます。

パッケージの命名規則とは

クラスやインターフェースはフォルダでグループ分けします。

例えば、

フォルダの階層が第1階層から第3階層まであり、第3階層でクラスを定義する

この場合、パッケージ名は

第1階層フォルダ名.第2階層フォルダ名.第3階層フォルダ名

というように「.」(ピリオド)を使って第1階層から順にフォルダ名を連結してパッケージ名を付けます。また、フォルダ名は小文字が推奨されています。

パッケージを宣言する方法

それではサンプルコードでパッケージの宣言についてみていきましょう。

lang/java/hello/HelloJava.java:

lang/cpp/hello/HelloCpp.java:

パッケージの宣言のポイントは以下のようになります。

  • packageはJavaファイルの先頭に記述します。
  • 最上位階層のフォルダ名から順に「.」(ピリオド)を使って連結します。
  • パッケージ名の後には「;」(セミコロン)を記述します。

パッケージをimportする方法

それでは、先ほどのクラスのサンプルコードをmainメソッド内で使用します。

packageで宣言したクラスを使うにはimportを用いて、最上位階層のフォルダ名から順に「.」(ピリオド)を使って連結し最後に使用するクラス名を記述します。

importの宣言の後には「;」(セミコロン)を記述します。

コンパイル、実行する方法

コンパイル、実行するにはjavac、javaコマンドを使用します。

mainメソッドを含むクラスでimportしている場合はクラスパスを設定する必要はありません。ただし、この場合はソースコードと同じフォルダにclassファイルが生成されます。

ソースコードとclassファイルが混在してゴチャゴチャしてしまいます。ソースコードとclassファイルを混在させずに、分けたい場合はjavacコマンドで-dオプションを使います。

例えば下記のとおりです。

こうすることで、binフォルダ以下はsrcフォルダ以下の構成と全く同じ構成でclassファイルだけが生成されるようになります。クラスパスの設定については、こちらで詳しく解説していますので、ぜひ参考にしてください。

【Java入門】classpathを指定して実行する方法(確認の方法も解説)
更新日 : 2019年4月8日

パッケージ名を取得する方法

Javaのプログラムでパッケージ名を取得する方法についてご紹介します。

lang/java/pkgname/GetMyPkgJava.java:

lang/cpp/pkgname/GetMyPkgCpp.java

Main.java:

実行結果:

まとめ

今回はJavaのパッケージについて解説してきましたが、いかがでしたか?Javaではプログラミングをする際にたくさんのクラスを作成します。

たくさんのクラスはフォルダごとに整理されていると、後々の修正や改良する際に探す手間が省けます。クラスをフォルダごとに分けて保存すると、packageを宣言することでimportして利用することができます。

使いこなすことができるように、この記事を何度も参考にして下さいね!

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

長野 透

長野 透

熊本在住のフリープログラマ兼ライターです。C/C++/C#、Java、Python、HTML/CSS、PHPを使ってプログラミングをしています。専門は画像処理で最近は機械学習、ディープラーニングにはまっています。幅広くやってきた経験を活かしてポイントをわかりやすくお伝えしようと思います。
お問合せはこちらでも受け付けています。
[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説