📄 d0fb80401975001d1dddb6604daa6ad2
字号:
//【例4-8】 子类对象的初始化,掌握this()和super()的使用。
//程序清单4-8: SubobjectInitializeDemo.java
package e4_8;
public class SubobjectInitializeDemo {
public static void main(String args[]) {
B b = new B(1, 2, 3);
System.out.println("a = " + b.getA() + "\nb = " + b.getB() + "\nc = "
+ b.getC());
}
}
class A {// 类A
private int a;// 私有成员变量
public A() {
} // 无参构造方法
public A(int a) {
this.a = a;
}// 带一个参数的构造方法
public int getA() {
return a;
}
}
class B extends A {// 类B继承类A
private int b;// 私有成员变量
private int c;
public B() {
} // 无参构造方法
public B(int b) {
this.b = b;
}// 带一个参数的构造方法
public B(int a, int b) {// 带两个参数的构造方法
super(a);// 调用类B的父类A的“public A(int a)”构造方法
// 调用类B自身的“public B(int a)”构造方法,
// 但super()与this()只能取其一,且必须位于所在构造方法的第一行
// this(b);
this.b = b;
}
public B(int a, int b, int c) {// 带三个参数的构造方法
this(a, b);// 调用类B自身的“public B(int a, int b)”构造方法
this.c = c;
}
public int getB() {
return b;
}
public int getC() {
return c;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -