名前、電子メール、都市、州、郵便番号を含むユーザークラスがあります。これは、モバイルユーザーとWebユーザーの両方のサブグループに共通です。サブグループにはさまざまなメソッドがあります。ユーザーは抽象クラスであり、2つのサブグループはそのようである必要がありますか?

名前、電子メール、都市、州、郵便番号を含むユーザークラスがあります。これは、モバイルユーザーとWebユーザーの両方のサブグループに共通です。サブグループにはさまざまなメソッドがあります。ユーザーは抽象クラスであり、2つのサブグループはそのようである必要がありますか?

基本的にすべてが正しいですUserが、それは通常のクラス(抽象ではない)である必要があります。
クラスで特定の共有動作のセットを定義し、そのサブクラスabstractに他の動作を強制する場合は、クラスを使用する必要があることに注意してください。これはあなたの状況には当てはまりません。むしろ、サブクラスは単にUserクラスに追加の動作を提供します。
一部の人々は、サブクラスを持つすべてのクラスを抽象化し、リーフの優れた設計手法であるすべてのクラスをファイナルにすることを検討しています。その原則を順守し、それでもユーザーをインスタンス化したい場合は、最終的な別のサブクラスが必要になります。