package lian;
/*
* 继承中构造方法的关系:
* A:子类中所有的构造方法都默认访问父类中无参的构造方法
* B:为什么会如此:
* 因为子类会继承父类中的数据,可能还会使用父类中的数据。所以,子类初始化之前,一定要先完成父类数据的初始化。
*
* 继承中成员方法的关系:
* A:子类中的方法和父类中的方法声明不一样。
* B:子类中的方法和父类中的方法声明一样。(方法重写——override)
* a:先找子类中的方法,有就使用。
* b:再找父类中的方法,有就使用。
* c:如果都没有就出错。
*/
class monkly extends animols{
public monkly(){
System.out.println("子类的无参构造");
}
public void show(){
int a=123;
System.out.println("子类的a");
}
}
class animols{
public animols(){
System.out.println("父类的无参构造");
}
public void show(){
System.out.println("哈哈,我是中国人~");
}
}
public class HelloWorld {
public static void main(String[] args) {
monkly m =new monkly();//构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用
System.out.println("---------------");
animols a=new monkly();//多态调用了子类的方法
a.show();
}
}