text Java的サブクラスのコンストラクタ
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了text Java的サブクラスのコンストラクタ相关的知识,希望对你有一定的参考价值。
// スーパークラスMechatroを継承
class Mate extends Mechatro {
Mate(String name, String color) {
// スーパークラスのコンストラクタに引数を渡す
super(name, color);
System.out.println("サブクラスのコンストラクタです");
}
}
// スーパークラスMechatroを継承
class Wego extends Mechatro {
// スーパークラスにはないサブクラス独自のフィールド
private int power = 50;
Wego(String name, String color) {
// スーパークラスのコンストラクタに引数を渡す
super(name, color);
System.out.println("サブクラスのコンストラクタです");
}
// メソッドのオーバーライド
public void printData() {
// スーパークラスのprintData()メソッドを呼び出し
super.printData();
// スーパークラスにはないサブクラス独自の処理
System.out.println("ぱわー: " + this.power);
}
}
// スーパークラスMechatro
class Mechatro {
// privateだとサブクラスからアクセスできないのでprotected
protected String name;
protected String color;
// コンストラクタでnameとcolorの値をセットする
Mechatro(String name, String color) {
this.name = name;
this.color = color;
System.out.println("スーパークラスのコンストラクタです");
}
public void printData() {
System.out.println("なまえ: " + this.name);
System.out.println("いろ: " + this.color);
}
}
class Main {
public static void main(String[] args) {
// インスタンスを生成し、変数に代入
Wego wego1 = new Wego("びびっと", "黄");
Mate mate1 = new Mate("あいぼりー", "薄クリーム"));
// スーパークラスのインスタンスメソッドを呼び出す
wego1.printData();
// スーパークラスのインスタンスメソッドを呼び出す
mate1.printData();
}
}
◆サブクラスでコンストラクタを定義する
お約束:コンストラクタの先頭で、スーパークラスのコンストラクタを呼びだす。
super:「super()」でスーパークラスのコンストラクタを呼び出す
(注意1)
スーパークラスにprivateで定義されているフィールドは、サブクラスから直接アクセスできない。
ゲッターで値を取得をするか、privateではなくprotectedで定義する。
◆protected:宣言したスーパークラス内と、サブクラス内からもアクセスできる。
◇◇◇実行結果◇◇◇
スーパークラスのコンストラクタです
サブクラスのコンストラクタです
スーパークラスのコンストラクタです
サブクラスのコンストラクタです
なまえ: びびっと
いろ: 黄
ぱわー: 50
なまえ: あいぼりー
いろ: 薄クリーム
以上是关于text Java的サブクラスのコンストラクタ的主要内容,如果未能解决你的问题,请参考以下文章
java 同クラスの各インスタンスから,共通であるインスタンスメソッドを呼び出して,特定の结果を得る
Java
java 例外について独自クラスの作成
text OPAMコンパイル+インストール#memo
Apex スケジューラを使用したジョブのスケジュール
java java的の実行可能クラスの雏形.CLIからの呼び出し用。