継承、コンストラクターなどの抽象クラスと具象クラスの違い

Whimusical

クラス内の抽象修飾子がそれを作ることは誰もが知っています

  • インスタンス化できない、
  • 抽象メソッドの候補、
  • 非最終的、非静的、非プライベート

それに加えて、私はそれが背後に表すすべての変更または副作用を正確に知りたいです。まだ何をしていないのかは定かではありませんが、継承やコンストラクターなど、もっと検討すべきことがあるのではないかと思います。

説明されている2つの公式のポイントとは別に、抽象クラスと、スーパーと呼ばれる拡張時に考慮すべき具体的なクラスとの間に違いや特別な動作がありますか。

コンパイラは、それが通常のクラスであり、インスタンス化を禁止する以外のすべてのプロパティを持っていると想定していますか?

セルゲイ・カリニチェンコ

抽象クラスは、ほとんどの場合、設計概念です。コンパイラーよりも、コードのリーダーに対してより多くのことを行います。それらに必要なコンパイラとJVMのサポートは最小限です。つまり、クラスに「インスタンス化しない」フラグを設定し、コードをコンパイルするとき、およびリフレクションを介してインスタンスを作成しようとするときにチェックします。

一方、コードの人間の読者にとっての利点ははるかに大きいです。彼らは、継承用に抽象クラスを設計したことを知っており、抽象メソッドを介してどの拡張ポイントを作成したかを確認します。さらに、コンパイラは、すべての抽象メソッドにオーバーライドが提供されているかどうかを追跡します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Scalaでの暗黙の抽象クラスコンストラクターパラメーターと継承

分類Dev

継承のないクラスのコンストラクターのsuper()

分類Dev

TypeScriptクラス継承コンストラクターの混乱

分類Dev

TypeScriptクラス継承コンストラクターの混乱

分類Dev

抽象クラスの継承

分類Dev

Javaの継承とコンストラクターの引数

分類Dev

具象クラスの継承からの抽象クラスの型推論

分類Dev

Qt継承とクラスコンストラクターの混乱

分類Dev

コンストラクターと仮想基本クラスの継承

分類Dev

明示的なコンストラクターの継承(Intel C ++)

分類Dev

コンストラクタなしで抽象クラスを継承します

分類Dev

C ++の抽象クラスと継承

分類Dev

抽象クラスは具象クラスとどう違うのですか?

分類Dev

C ++の多重継承と明示的なコンストラクター呼び出し

分類Dev

コンストラクターの継承とカスタムコンストラクター

分類Dev

基本クラスコンストラクターを呼び出さないC#での継承の問題

分類Dev

コンストラクターが引数を必要とする抽象クラスと、抽象get-onlyプロパティを持つ抽象クラスの違い

分類Dev

Haskellの継承、データ、コンストラクター

分類Dev

継承されたクラスと親のコンストラクタ

分類Dev

抽象クラスから継承するクラスのコンストラクターで誰かがスーパーを呼び出すとどうなりますか?

分類Dev

C#で継承せずにジェネリッククラスの具象コンストラクターを作成する

分類Dev

継承のC ++コピーコンストラクタ

分類Dev

Javaでのコンストラクターの継承

分類Dev

抽象クラス、継承と仮想デストラクタ

分類Dev

抽象クラスによるAngular4コンポーネントの継承

分類Dev

継承されたクラスのジェネリックスとコンストラクター

分類Dev

コンストラクターの継承とメンバーの直接初期化

分類Dev

クラス継承:コンパイラによって認識されないクラスのコンストラクタおよびメンバー関数

分類Dev

JAVAの複数のコンストラクターとIFと継承

Related 関連記事

  1. 1

    Scalaでの暗黙の抽象クラスコンストラクターパラメーターと継承

  2. 2

    継承のないクラスのコンストラクターのsuper()

  3. 3

    TypeScriptクラス継承コンストラクターの混乱

  4. 4

    TypeScriptクラス継承コンストラクターの混乱

  5. 5

    抽象クラスの継承

  6. 6

    Javaの継承とコンストラクターの引数

  7. 7

    具象クラスの継承からの抽象クラスの型推論

  8. 8

    Qt継承とクラスコンストラクターの混乱

  9. 9

    コンストラクターと仮想基本クラスの継承

  10. 10

    明示的なコンストラクターの継承(Intel C ++)

  11. 11

    コンストラクタなしで抽象クラスを継承します

  12. 12

    C ++の抽象クラスと継承

  13. 13

    抽象クラスは具象クラスとどう違うのですか?

  14. 14

    C ++の多重継承と明示的なコンストラクター呼び出し

  15. 15

    コンストラクターの継承とカスタムコンストラクター

  16. 16

    基本クラスコンストラクターを呼び出さないC#での継承の問題

  17. 17

    コンストラクターが引数を必要とする抽象クラスと、抽象get-onlyプロパティを持つ抽象クラスの違い

  18. 18

    Haskellの継承、データ、コンストラクター

  19. 19

    継承されたクラスと親のコンストラクタ

  20. 20

    抽象クラスから継承するクラスのコンストラクターで誰かがスーパーを呼び出すとどうなりますか?

  21. 21

    C#で継承せずにジェネリッククラスの具象コンストラクターを作成する

  22. 22

    継承のC ++コピーコンストラクタ

  23. 23

    Javaでのコンストラクターの継承

  24. 24

    抽象クラス、継承と仮想デストラクタ

  25. 25

    抽象クラスによるAngular4コンポーネントの継承

  26. 26

    継承されたクラスのジェネリックスとコンストラクター

  27. 27

    コンストラクターの継承とメンバーの直接初期化

  28. 28

    クラス継承:コンパイラによって認識されないクラスのコンストラクタおよびメンバー関数

  29. 29

    JAVAの複数のコンストラクターとIFと継承

ホットタグ

アーカイブ