ホームページ > Java > &#&チュートリアル > 複数の Java クラスが 1 つのファイルに存在できますか?またその影響は何ですか?

複数の Java クラスが 1 つのファイルに存在できますか?またその影響は何ですか?

Barbara Streisand
リリース: 2024-12-02 13:50:10
オリジナル
419 人が閲覧しました

Can Multiple Java Classes Exist in One File, and What Are the Implications?

1 つの Java ファイル内の複数のクラス宣言

Java では、同じソース ファイル内で複数のクラスを定義できます。ただし、この手法にはいくつかの注意点と制限があります。

テクニックの具体的な名前の欠如

やや一般的な手法であるにもかかわらず、このテクニックには特定の名前がありません。内部、ネスト、匿名などの他のクラス分類とは異なり、正式名class.

コンパイルの制限

Java 言語仕様 (JLS) では、システムが他のコンパイル単位で非パブリック クラスを参照する際に制限を強制する可能性があると述べていますが、この制限は、Java コンパイラ間で一貫して実装されていません。

Javac の制限事項

具体的には、どちらのクラスもそのクラスが存在するファイルの同名ではない場合、別のファイルの最上位クラスを参照するクラスをコンパイルするときに、Javac はエラーを発行することがあります。この制限は次の理由によるものです。コンパイラは、非パブリック クラスに対してどのソース ファイルを参照するかを決定できません。

の回避問題

この制限を回避するために、開発者は通常、各ソース ファイルに単一の最上位クラスを配置するという規則に従います。これにより、コンパイル プロセスに影響を与えることなく、クラスのアクセス レベルをより柔軟に変更できるようになります。

新しい Javac 機能

Javac の新しいバージョンでは、次のような場合にも警告が表示されます。ソース ファイルの外部から参照される補助クラスが存在するため、ファイルごとに単一の最上位クラスの使用がさらに推奨されます。

以上が複数の Java クラスが 1 つのファイルに存在できますか?またその影響は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート