\r\n\r\n
Javaにおけるパッケージとインターフェイスの主な違いは、パッケージがクラスを構造的に分類してアクセスやメンテナンスを容易にするのに対し、インターフェイスは多重継承の実装や抽象化の実装に役立つことである。
Javaは最も人気のあるプログラミング言語の1つです。Javaの主な利点は、オブジェクト指向プログラミングをサポートしていることです。この手法により、実世界の物体をソフトウェアの中でモデル化することができます。クラスは、オブジェクトを作成するための青写真です。各オブジェクトは、プロパティを記述するデータまたはフィールドを含み、または振る舞いを記述する属性とメソッドを含む。本稿では、Java言語におけるOOPに関連する2つの概念、パッケージとインターフェースについて説明します。
1. 概要と主な違い 2. Javaにおけるパッケージとは 3. Javaにおけるインターフェースとは 4. 横並び比較 - Javaにおけるパッケージとインターフェースを表形式で表示 5. まとめ
Javaには数多くのクラスが用意されています。すべてのクラスを1つのフォルダに入れておくと、アクセスしづらくなるため、難しい場合があります。これはプログラムの管理性に影響します。javaはクラスを配置するためにパッケージを使用します。フォルダに似ています。javaapiは、クラスを機能別にパッケージにグループ分けしています。したがって、各パッケージには、関連するクラスのセットが含まれます。
ここでは、パッケージのサンプルをご紹介します。この java.io ファイルパッケージには、入力、出力サポートクラスが含まれています。java.net webパッケージには、ネットワークに関連するクラスが含まれています。このjava.awtファイルパッケージには、GUIを構築するために必要なすべてのクラスが含まれています。これらは、ごく少数のjavaapiパッケージです。
プログラマーが自分のプログラムでクラスを使いたい場合、そのパッケージをインポートする必要があります。もし、プログラマーがjava.ioのパッケージをファイルしたい場合、import文を次のように書きます。
java.util.BufferInoutStreamをインポートしました。
次の文は、utilパッケージのすべてのクラスをインポートします。
java.util file.*をインポートします。
また、ユーザー定義のパッケージも作成することができます。
梱包スタッフ。
公務員
}
上記の例によると、employee はパッケージ名です。Employee クラスは Employee パッケージに含まれます。このファイルは Employee パッケージに employee.java として別途保存されます。
さらに、あるパッケージから別のパッケージにパブリッククラスをインポートすることも可能です。以下の例を参照してください。
図01:クラスA
図02:クラスB
クラスはパッケージ 1 に含まれ、display という名前のパブリックメソッドを含んでいます。クラスBはパッケージ2に入っており、mainメソッドが含まれています。パッケージが異なっていても、クラスBはパッケージ1をインポートすることで、クラスAのオブジェクトを作成することができます。package1 をインポートすると、クラス B はクラス A のデータとメソッドにアクセスできるようになります。
一般に、Javaのパッケージは、プロジェクト・ファイルの整理に役立ちます。すべてのファイルを整理して保存できるため、大規模なシステムを開発する際に非常に有効です。これに加えて、javaapiパッケージでは、プログラマーが既に存在するクラスを使用することができます。
プログラマがメソッドの定義を知らないこともある。このような場合、プログラマはメソッドを宣言するだけでよい。抽象的なメソッドとは、定義のないメソッドのことです。宣言しかない。クラスは、少なくとも1つの抽象メソッドが存在するとき、抽象クラスになります。さらに、抽象クラスは、抽象的なメソッドだけでなく、非抽象的なメソッドも含むことができる。プログラマは、抽象クラスからオブジェクトを作成することはできません。
あるクラスが抽象クラスを継承する場合、新しいクラスは抽象クラスのすべての抽象メソッドを定義する必要があります。つまり、抽象クラスAにdisplayという抽象メソッドがあるとする。クラスBはクラスAを継承し、クラスBはメソッドdisplayを定義する必要があります。
AとBの両方が抽象クラスであると仮定する。クラスCがAとBを拡張する場合、クラスCは両クラスの抽象メソッドを定義しなければなりません。これは多重継承であり、Javaは多重継承をサポートしていません。それを実装するために、プログラマはインターフェースを使用する必要があります。AとBがインターフェースである場合、クラスCはそれらを実装することができます。以下の例を参照してください。
図03:インターフェースA
図04:インターフェースB
インターフェースAはdisplay1抽象メソッド、インターフェースBはdisplay2抽象メソッドを持っています。
図05:カテゴリーC
クラスCはインタフェースAとBの両方を実装しているので、両方のメソッドを定義する必要があります。
図06:主なメソッド
ここでも、インタフェースは、Javaでの多重継承の実装に役立つ。
多重継承に加え、インターフェースは抽象化の実装に役立つ。OOPのキーコンセプトである。抽象化により、実装の詳細を隠蔽し、機能のみをユーザーに見せることができます。さらに、「どうやるか」ではなく「何をやるか」に焦点を当てることができます。インターフェースは抽象的なメソッドで構成されているため、抽象的なメソッドをアーカイブするのに役立ちます。
パッケージは、アクセス保護と名前空間管理を提供する関連クラスのセットです。インターフェースは、抽象的なメソッドを集めたクラスと同様の参照型である。パッケージは、クラスを組織的に分類し、簡単にアクセスして保守できるようにするのに役立ちます。一方、インターフェースは多重継承の実装や抽象化の実装に役立つ。これが、Javaにおけるパッケージとインターフェースの主な違いです。また、パッケージの書き方は、java.utilファイル、java.awtファイルなど小文字を使う。インターフェース名がAreaであれば、インターフェースAreaと書く。
Javaにおけるパッケージとインターフェイスの違いは、パッケージがクラスを構造的に分類してアクセスやメンテナンスを容易にするのに対し、インターフェイスは多重継承の実装や抽象化の実装を支援することです。