Androidでは、多くの機能がActivity
派生クラスにあります。アクティビティが大きくなると(多くのイベントハンドラーなどが含まれる場合)、Javaファイルが大きくなり、非常に雑然となる可能性があります。
partial
C#にキーワードがあるように、Javaクラスコードファイルを「分割」する方法はありますか?
簡潔な答え ?番号。
ウィキペディアから引用
Sun Microsystems Java コンパイラでは、ソース ファイル名がその内部の唯一のパブリック クラスと一致する必要がありますが、C# では同じファイル内で複数のパブリック クラスを使用でき、ファイル名に制限はありません。C# 2.0 以降では、ソース コードで partial キーワードを使用して、クラス定義を複数のファイルに分割できます。Java では、パブリック クラスは常に独自のソース ファイル内にあります。C# では、ソース コード ファイルと論理ユニットの分離は密接に関連していません。
そのため、設計をやり直し、一部のコードをユーティリティ クラスに委譲してコードを整理することはできますが、Java では 1 つのクラスのコードを 2 つのファイルに分割することはできません。
他の人が指摘しているように、実際のファイルを分割することはできません (これは良いことだと思います)。
カスタム ビューとフラグメントでビュー関連の機能を抽出できます。他のすべて (ビジネス ロジック、Web サービス アクセス、DB アクセスなど) は、アクティビティで使用する「ヘルパー」クラスに含めることができます。アクティビティは Android の神のオブジェクトですが、実際のアクティビティ クラス内にすべてを記述する必要はありません。調整するだけで、必要なコールバックとイベント ハンドラーを実装する必要があります (技術的には、独自のクラスにすることもできます)。
いいえ。Java ソース コードを複数のファイルに分割することはできません。
http://en.wikipedia.org/wiki/Comparison_of_Java_and_C_Sharpから
Sun Microsystems Java コンパイラでは、ソース ファイル名がその内部の唯一のパブリック クラスと一致する必要がありますが、C# では同じファイル内で複数のパブリック クラスを使用でき、ファイル名に制限はありません。C# 2.0 以降では、ソース コードで partial キーワードを使用して、クラス定義を複数のファイルに分割できます。Java では、パブリック クラスは常に独自のソース ファイル内にあります。C# では、ソース コード ファイルと論理ユニットの分離は密接に関連していません。