最近VC++をはじめていじって、
思った疑問です。
class A
class B extends A
class C extends C
各クラスはメソッドaaa()を持ってたとします。
Aのaaa()はsysout("A.aaa")
Bのaaa()はsysout("B.aaa")
(sysout = System.out.println)
ってなっている場合
CのaaaでAのような振る舞いを見せることは可能なんでしょうか。
C++だと親子関係をすっとばして親の親(おじいちゃん?)のメソッドを呼べるようです。
javaだとsuper.aaa()みたいな書き方しかできないと
おもうのですが、
親の親のメソッドを呼ぶってできるのでしょうか?
No.2
- 回答日時:
適当な回答ばかりですみませんが、
継承関係を変更することは不可能ですか?C extends Aとか。
または、Aを直接呼び出すことがないのであればinterfaceにしちゃうとか。
ありがとうございます。
特に実務で必要になったわけじゃなくて、
おやをすっとばしておじいちゃんを
呼べるかどうかを知りたかったのです。
実務で必要になれば、
アドバイスいただいたような方向で
解決しなくてはいけないかもしれませんね!
No.3ベストアンサー
- 回答日時:
Javaではsuperにsuperを重ねることはできません。
親のクラスがおじいちゃんのクラスのメソッドを
オーバーライドしていないのであれば、
もちろんsuper.xxx();で呼べるでしょうが、
親のクラスがおじいちゃんのクラスのメソッドを
オーバーライドしているということは、
おじいちゃんのクラスのメソッドではなく、
自分のクラスのメソッドを使ってほしい、
ということであると思います。
おじいちゃんのクラスのメソッドを呼べるとしたら、
親のクラスのメソッドの中で、super.xxx();を
呼んでいるなら、間接的に呼べるのでしょうけど。
つまり、おじいちゃんのメソッドを呼ぶということは
親のクラスの意向に従っていないことになるわけで、
必要ならおじいちゃんを継承するべきです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript JavaScript?jQuery?で書き方を教えてください。 初心者です。 AAAという要素をステ 2 2023/08/04 22:09
- Excel(エクセル) Excel VBA 3 2023/04/22 10:46
- Excel(エクセル) ¥マークを含むパスの処理について(マクロ、または関数) 2 2022/12/25 02:11
- その他(プログラミング・Web制作) Pythonで複数のメソッドをまとめて管理する方法について 1 2023/03/30 00:01
- JavaScript jsonテキストデータの並び替えができるサービスを教えてください 2 2022/08/05 20:16
- JavaScript 指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードを教えてください 2 2023/04/27 17:58
- Visual Basic(VBA) VBA。複数のChangeイベントをまとめる方法 2 2022/03/31 12:03
- Perl perl このテキストファイルを簡単に配列に入れるには? 2 2022/04/27 20:24
- SQL Server ACCESSで3ファイルを結合して、表を作成するやり方を教えて下さい。 17 2022/08/15 20:34
- 邦楽 AAA 3 2023/05/04 07:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Java初級 引数に適用できません
-
レコード件数の表示
-
public static void main (Stri...
-
親の親のメソッドを呼ぶには?
-
StringBufferからStringへキャ...
-
説明文書でのメソッド・変数の...
-
Java初心者です、エラーの意味...
-
Javaのメモリの管理
-
abstract と static を一緒に付...
-
C# でメソッドに送られてきたOb...
-
C# 他のnamespaceにあるメソッ...
-
メソッド宣言の戻り値の型にク...
-
クラスを作るとメソッドの数が...
-
String.containsの反対機能はあ...
-
return new使用時
-
djUnit コンストラクタがpriva...
-
javaのprivateって?
-
JAVAコンパイルができない。
-
JComponentを継承して処理をJBu...
-
getInsets() メソッドの使い方...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Java初級 引数に適用できません
-
public static void main (Stri...
-
レコード件数の表示
-
abstract と static を一緒に付...
-
なぜprotected overrideなのか
-
C# 点の描き方をおしえてくだ...
-
コマンドライン引数のチェック
-
String.containsの反対機能はあ...
-
Google Apps Script で getRang...
-
StringBufferからStringへキャ...
-
Java初心者です、エラーの意味...
-
javaに"search"という関数 or ...
-
C# でメソッドに送られてきたOb...
-
YYYYMMDD書式の日付に対する適...
-
メソッド宣言の戻り値の型にク...
-
return new使用時
-
readLine()ではじめから読み直...
-
シェルスクリプトからのJavaメ...
-
Fileの読み取り専用の解除
-
親の親のメソッドを呼ぶには?
おすすめ情報