类A只能继承一个父类AA,如果想要调用类C的方法,
不能直接在类A上继承,让父类AA去继承,
这样类A就能间接调用类C的方法
public class TestDemo {
public static void main(String[] args) {
son s = new son();
s.test();
}
}
//爷爷类可以被子类调用的
class grandfather {
int money = 100;
}
//父类继承爷爷类
class father extends grandfather {
String name = "father";
}
//子类继承父类
class son extends father {
public void test() {
System.out.println(name + " have $" + money);
}
}
练习----如果继承类中有同名的怎么办?
public class TestDemo {
public static void main(String[] args) {
son s = new son();
s.test();
}
}
//爷爷类可以被子类调用的
class grandfather {
int money222 = 1000;
}
//父类继承爷爷类
class father extends grandfather {
int money = 100;
String name = "father";
}
//子类继承父类
class son extends father {
int money = 10;
public void test() {
int money = 1;
//当三个类有同名的变量,就取最近的变量值
System.out.println(name + " have $" + money);
//用this可以取到当前类中的变量值
System.out.println(name + " have $" + this.money);
//用super可以取到父类中的变量值
System.out.println(name + " have $" + super.money);
//爷爷类取不到,只能换一个变量名
System.out.println(name + " have $" + money222);
}
}