オブジェクト指向言語における、クラス継承の動作について
ご教授ください。
クラスを継承する場合、extendsなどといったキーワードで継承の動きを
実現させるとおもいますが、継承とは、Aというクラスを丸々包含したBというクラスを作成することをいうのでしょうか?
それとも、Aというクラス内にあるpublicやprotectedメンバのみをBというクラスに引き継ぐことをいうのでしょうか?
書籍にやサイトによっては【継承とは継承もとのprivateおよびprotecetd(に準じた)メンバを派生クラスに引き継がせる】という風に解釈できる文面で記述されているものがあります。
継承とは親クラスを拡張した子クラスを作成する
と解釈できるような文面で記述された文献もあります。
伺いたいのは、クラス丸ごとを継承するのかそれともpublicおよびprotectedに準じたメンバのみを
継承するのかです。
OOPの思想や、ちょっと詳しいからといってこまごましたことを
こたえてくるような方はご遠慮ください。
No.2ベストアンサー
- 回答日時:
クラスを丸ごと継承します。
その中で、サブクラスからオーバーライドできるのはpublic、protectedといった
スコープのもの、というだけです。
しかしながら、継承とはコピーと同義ではありません。
No.5
- 回答日時:
そもそも、オブジェクト指向というものを勘違いしているのではないか、と思いますが。
オブジェクト指向の「大げさな能書き」に振り回された犠牲者の一人かと。
適切な解説書で勉強しなおすことをお勧めします。
「継承とは親クラスを拡張した子クラスを作成する」ではなく
「継承とは親クラスを拡張した子クラスを定義する」です。
クラスは作成されるものではなく定義されるものです。
クラスに基づいて作成されるのがオブジェクトです。
文面から察するに、クラス、オブジェクト、それぞれの意味が
理解できていないと思われます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C# 継承の問題で programに示された拡張をすべて含んだ上で,クラス Mammal に,そのオ 1 2022/07/22 09:48
- Java オブジェクト指向プログラミングの実践本を紹介してください 3 2022/09/19 04:56
- 弁護士・行政書士・司法書士・社会保険労務士 管理費滞納債務の特定承継人への承継 6 2022/04/02 16:59
- 倫理・人権 なぜ「女系」ではだめなのでしょうか?本質的には「男系」と同じことではないでしょうか? 20 2023/05/15 21:28
- 世界情勢 ヘンリー王子に新たに子供が生まれたら、王位継承権はありますか? イギリス王家離脱 1 2023/02/02 17:28
- 歴史学 日本では先祖の名前(姓でない方)の一字を継承し、中国・朝鮮では継承しない、という違いはどこから生まれ 6 2022/10/12 16:29
- 賃貸マンション・賃貸アパート 賃貸人の地位承継について 引っ越したばかりのマンション(去年の12月に建ったばかり)ですが、本日賃貸 4 2022/09/12 15:14
- 高校 こちらの問題がわからなくて、教えて欲しいです、、、、 ナポレオン 1 世の死により,皇位継承権は〔 2 2023/07/28 18:48
- 相続・遺言 元配偶者の子の相続権について 3 2022/07/27 20:39
- その他(暮らし・生活・行事) 親が低学歴で低収入で大変な体を酷使する仕事して、家に帰った世の中の文句ばかり言って、夫婦でお金のこと 5 2022/11/07 23:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FriendとPublicの違い。。。
-
クラスのアドレスを引数として...
-
イベントにAddHandlerされてい...
-
既定のコンストラクタがない?
-
C++では構造体がメンバ関数をも...
-
このコンパイルエラーの意味に...
-
(UWSC) 「#32770」の意味わかり...
-
スプラッシュコントロールの挿...
-
IncludeではなくClassで宣言す...
-
WindowsAPIのリストビューの...
-
form1 から form2 へのデータの...
-
ボタンのオーナードローについて
-
ウィンドウの背景に画像を配置する
-
コンソールアプリでのクリップ...
-
MFCアプリのコマンドラインでパ...
-
VC6 コンパイルエラー C2248に...
-
MessageBoxを継承したい
-
C++/CLIからC++の呼び出しで例外
-
個々の関数について継承してい...
-
VB2008: 継承の場合のコンスト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FriendとPublicの違い。。。
-
既定のコンストラクタがない?
-
(UWSC) 「#32770」の意味わかり...
-
クラスのアドレスを引数として...
-
ダイアログ表示時にチェックボ...
-
イベントにAddHandlerされてい...
-
【ASP.NET】 独自で作成したク...
-
MFCアプリのコマンドラインでパ...
-
DebugクラスとTraceクラスの違い
-
ボタンのオーナードローについて
-
OnInitDialog()の関数の組み込み方
-
IncludeではなくClassで宣言す...
-
関数の呼び出し元の検索
-
このコンパイルエラーの意味に...
-
C++ protectedにアクセス不可
-
C++で継承元のクラスの代入演算...
-
DataGridViewのセルに斜線を引...
-
C#で通常のbuttonコントロール...
-
エディットコントロールのイベ...
-
CMainFrameクラスの使い方
おすすめ情報