0

いくつかの異なるサービスを使用するアプリを開発しています。これらのサービスには、多くの場合、同じメソッドが含まれています。これらのメソッドを別のクラスに配置できる場合もありますが、アクティビティまたはサービスを拡張するクラスでのみ実行できるメソッドに依存する場合もあります。

本質的に、これらのメソッドのいくつかを含む基本サービスを作成し、それを他のすべてのサービスに拡張することで、コードの量を最小限に抑えたいと考えています (したがって、作業と複雑化の可能性もあります)。

オンラインで多くの情報を見つけることができません。これは可能ですか?もしそうなら、どうすればいいですか?亀裂がありましたが、例外が見つからないアクティビティがスローされます。

ありがとう!

4

2 に答える 2

1

この抽象クラスのを見てください。効果的なJavaは、あなたが説明していることに基づいて抽象クラスへのインターフェースを好みますが、これは抽象クラスが理にかなっている場合のように思えます。

抽象クラスは、クラス メンバーが実装する共通の機能セットがあるが、実際の実装が異なる場合に役立ちます。古典的な例は GraphicObject です。すべての図形には draw メソッドが必要ですが、正方形の描画方法は円とは異なります。

基本的な考え方は、抽象クラスを拡張するサービスによって共有されるすべてのメソッドなどで構成されるフレームワークをセットアップすることです。次に、抽象クラスを拡張する各クラスでこれらのメソッドの実装を制御できます。特定のサービスに必要な追加のメソッドをそのクラスの実装に追加することもできます。

于 2013-08-08T14:10:54.170 に答える
0

新しいクラスが確実に1つのクラスからのみ継承する限り。単一継承は Java 言語の制限です。クラス階層は任意の深さを持つことができますが、各クラスは 1 つの親からしか継承できません。

于 2013-08-08T13:46:09.160 に答える