----------------------
android培训、
java培训、期待与您交流! ----------------------
1、子类的每个构造函数里默认第一句是super(); ,不用写出来也会有隐式的,所以父类必须定义空参数构造函数(父类全无构造函数时也默认有空参构造函数,而当父类只有带参构造函数是会报错的)。要是不想让
第一句执行
super();
,可以在第一句写this.();来避免。
class A
{
int i=0;
A(){}//必须写
public A(String s)
{
i=1;
}
}
class B extends A
{
public B(String s)
{ //其实这里默认有A(){}
i=2;
}
}
2、若想调用父类里的带参构造函数,就手动在子类的构造函数里在第一行使用super(参数)来调用父类的对应构造函数。
class A
{
int i=0;
A(String s)
{
i=1;
}
}
class B extends A
{
B()
{
super("hhh");
//再写自己要定义的内容
}
}