子类在实例化时,会自动调用父类的构造函数,那请问:会实例化一个父类的对象吗?
首先创建一个子类对象,然后调用父类构造函数,将从父类继承过来的成员变量进行初始化,然后用子类的构造函数初始化成员变量------------------------是这样的吗?
问题是:如果父类中有不能被继承的成员变量,那么在子类的构造函数中用super(参数1,参数2)调用父类的构造函数时,仍然会通过super向不能被继承的成员变量赋值,可是有什么意义吗?
package chaper2;
public class Animal {
String name;
private int age;
public Animal(String n,int a) //父类的构造函数
{
name=n;
age=a;
}
}
package chaper2;
public class Dog extends Animal {
int weight;
public Dog() //子类的构造函数
{
super("kitty",10); //调用父类的构造函数,将父类中的私有变量age赋值为10 ,有什么意义吗?
weight=20;
}
}