[解決済み】Java。1つのファイルに複数のクラス宣言がある
2022-04-03 13:50:08
質問
Javaでは、1つのファイルに複数のトップレベルクラスを定義することができますが、そのうちの少なくとも1つはpublicである必要があります( JLS §7.6 ). 例として以下をご覧ください。
-
このテクニックの整理された名前はありますか(例として
inner
,nested
,anonymous
)? -
JLSでは、システム かもしれない これらのセカンダリクラスが
referred to by code in other compilation units of the package
例えば、package-privateとして扱われないなどです。 これは本当にJavaの実装間で変わるものなのでしょうか?
例:PublicClass.java。
package com.example.multiple;
public class PublicClass {
PrivateImpl impl = new PrivateImpl();
}
class PrivateImpl {
int implementationData;
}
解決方法は?
このテクニック(1つのソースファイルに複数のトップレベルクラスを含む)に私が提案する名前は "mess"です。真面目な話、良いアイデアだとは思いません。私ならこの状況では、代わりにネストされた型を使いますね。そうすれば、それがどのソースファイルにあるのかを予測するのはまだ簡単です。しかし、このアプローチに正式な用語があるとは思っていません。
しかし、そもそもこのようなことをしないようにすれば、気にする必要はないでしょう :)
関連
-
[解決済み] java.util.MissingFormatArgumentException: 形式指定子 '%s' がありません。
-
[解決済み] Eclipseでクラスとそれに対応するファイルの名前を変更する方法は?
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] Java で、あるコンストラクタを別のコンストラクタから呼び出すにはどうすればよいですか?
-
[解決済み] Java内部クラスと静的ネストされたクラス
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Java - JTextFieldが空かどうかを確認する
-
[解決済み] この配列の中の数字を入れ替えるには、何が足りないのでしょうか?ジャバ
-
[解決済み] JavaでFileFilterを作るには?
-
[解決済み] このフォーマット(Tue Jul 13 00:00:00 CEST 2010)の日付をJavaの日付に変換する方法(文字列はalfrescoのプロパティに由来しています)
-
[解決済み] XX:MaxDirectMemorySizeの既定値
-
[解決済み] 環境変数JAVA_OPTSの使い方を教えてください。
-
[解決済み] javascriptでExpression言語を使うには?
-
[解決済み] JavaにおけるMouseListenerとMouseAdapterの違いについて
-
[解決済み] Apache Camelのログに簡単なテキストを記録する
-
[解決済み] Javaでdoubleをfloatに変換する