Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のmodule-infoファイルのコンポーネントは何ですか?


モジュールは、単一の機能を表す独立したアプリケーションの単位です。モジュールには3つの重要なコンポーネントが含まれています

  • 名前: 一意に識別するため
  • 依存関係: 依存する他のモジュール
  • エクスポートされたパッケージ: 外部アプリケーション用に開いているパッケージ

モジュールを宣言するには、「 module-info.java」を追加する必要があります "ファイルをルートソースコードに追加します。"module-info.javaのコンポーネント "ファイルには"名前が含まれています "、"必要 "、"エクスポート "、および"へのエクスポート "。

以下は「module-info.java」のテンプレートです ファイル

module <module-name> {
   requires <module-name1> ;
   requires <module-name2>;
   ...
   exports <package-name1>;
   exports <package-name2>;
   ...
   exports <package-name> to <module-name>;
}
  • 名前: これはモジュールの重要な特性です。モジュラーシステムはモジュールを名前で識別するため、一意です。
  • 必要条件: この句は、依存関係を定義するために使用できます および外部 モジュール 現在のモジュールが依存している。個別の「要件」が必要です "module-info.java」の各依存モジュールのエントリ 。 Java9にはベースがあります モジュール 。これは、他のモジュールを必要としない独立したモジュールです。モジュールで「requires」句を使用して指定する必要はありません。この基本モジュールは、デフォルトで使用できます。 。
  • エクスポート: 「エクスポート」 句は、現在のモジュールエクスポートのパッケージを定義することです。これらのパッケージは、他のモジュールが使用できるように開いています。個別の「エクスポート」が必要です ""module-info.java"のエクスポートされた各モジュールのエントリ ファイル
  • エクスポート先: "にエ​​クスポート " 条項は、パッケージをすべての人にエクスポートするのではなく、特定のモジュールにのみエクスポートすることです。

  1. Java 9のインターフェースのプライベートメソッドの利点は何ですか?

    Java 9では、インターフェースにプライベートを含めることもできます。 方法 。 静的は別として およびデフォルト Java 8のメソッドは、再利用可能を可能にするため、もう1つの重要な変更です。 一般的なの コード インターフェイス自体の内部。 インターフェイスでは、コードにつながる複数のデフォルトメソッドで共通のコードを記述する可能性があります。 複製 。プライベートメソッドの導入により、このコードの重複が回避されます。 インターフェースのプライベートメソッドの利点 コードの重複を回避します。 コードの再利用性の確保。 コードの可読性を向上させます。 構文 interface in

  2. Java 9でのtry-with-resourcesの改善点は何ですか?

    リソースを試す Java 7で導入されました。これを使用する目的は、リソースを閉じることです。 使用後は自動的に。制限は、リソースがtryの前またはtryステートメント内で宣言される必要があることです。そうでない場合は、コンパイルがスローされます。 エラー 。 Java9はtry-with-resourcesを改善しました そして、tryステートメント内でオブジェクトを宣言する必要がなくなりました。 以下の例では、 try-with-resourcesを実装しています。 コンセプト。 例 import java.io.*; public class TryWithResourceTest {