抽象クラスと抽象メソッドをJavaで使用する実用的なサンプル/シナリオは、どのボディからも提供できますか?サンプルコードの説明は、概念的に理解するのに役立ちます。ありがとうJavaで抽象クラスと抽象メソッドを使用する理由
-1
A
答えて
1
abstract class Car{
public int drivenKm;
//....
public abstract void checkCar();
}
public class Volvo extends Car {
public void checkCar() {
checkWithVolvoTestSpecs1();
}
//you have some Volvo-specific tests implemented here
public void checkWithVolvoTestSpecs1(){
//....
}
}
public class BMW extends Car {
public void checkCar() {
checkWithBMWTest();
}
//you have some BMW-specific tests implemented here
public void checkWithBmWTest(){
//....
}
}
これで、BMWやVolvoを含む車のリストを作成できます。
いくつかのプロデューサ固有のチェックに従ってチェックする必要があるため、一般的なcheckCar()メソッドを実装することは時々意味がありません。したがって、クラス抽象クラスとメソッドをマークする必要があります。
クラスアブストラクトにマークを付けると、チェックできない非特定車が生成されなくなります。
メソッドアブストラクトをマークすることは、一般的なカーチェックを実装することを強制されず、派生クラスに特定のカーチェックを実装させることを強制することにも使用されます。
checkCar()の実装を持たない一般的な車オブジェクトが存在しないことと、すべての特定のオブジェクト(たとえば、次のような)が存在しないことが保証されているため、Carsのリスト内のすべてのオブジェクトに対してcheckCar BMW)はその方法の実装を持っています。
関連する問題
- 1. 抽象クラスと抽象メソッド
- 2. java抽象メソッドの抽象クラス
- 3. Java抽象クラス、抽象コンストラクタ
- 4. 非抽象クラスを抽象クラスで非抽象メソッドに値を代入する
- 5. Java抽象メソッド拡張クラス
- 6. Javaのメソッドの抽象クラス
- 7. Java抽象クラス
- 8. 抽象クラス対抽象クラス
- 9. 抽象クラスでJava
- 10. Java - オーバーライド抽象メソッド
- 11. 抽象メソッドとクラスC#
- 12. C#の抽象クラスとメソッド
- 13. Java抽象クラスとジェネリックス
- 14. python抽象基底クラス、mixinと抽象メソッドの違い
- 15. 抽象クラス内のコールバックから抽象メソッドを呼び出す
- 16. C#/ Javaで抽象クラスを使用する技術的な理由
- 17. エラー:クラスが抽象的ではなく、抽象メソッド
- 18. 抽象クラスの空のメソッド
- 19. 抽象クラス/メソッド、C# - > VB.NET
- 20. 抽象クラスを持たない抽象メソッド
- 21. 抽象クラスの抽象リストのアンマーシャリング
- 22. ジェネリックスと抽象メソッド
- 23. ファクトリパターンを抽象クラスで使用する
- 24. 抽象クラスの抽象メソッドの部分実装
- 25. VB.net抽象クラスの理解
- 26. Versionプロパティで抽象基底クラスSession.Lockと抽象基本クラス
- 27. クラスの「抽象メソッドで...抽象クラスをインスタンス化できません」
- 28. 抽象クラスと抽象メソッドを使用してJavaで抽象化を行うための有効なコードですか?
- 29. 抽象クラスとアクセサー
- 30. 抽象クラスとコンクリートクラス?
Java APIを参照してください。コレクション、JDBC、I/Oなど。抽象クラスとインタフェースで囲まれています。それらはあなたが必要とするはずの実用的な例です。 – duffymo
[Javaの抽象クラス](http://stackoverflow.com/questions/1320745/abstract-class-in-java)の可能な複製 – Gary99