java constructor 在构造子类时,一定会调用到父类的构造方法
2009-10-22 17:02
381 查看
sub class must call base class's constructor
sub class will invoke base class's constructor implicityly
if super constructor is undefined, must explicitly invoke another constructor
子类以一定要调用到父类方法。
子类可以隐式的调用父类默认的构造方法。
如果父类没有默认构造方法,必须显示调用。
Constructor call must be the first statement in the constructor
super() or this(...)
super和this要在第一个statement,不能被同时调用
default constructor is equivalent to the following code
public ASubClass(){
super();
}
默认构造函数会调用父类构造方法
if no constructor defined, compiler will create a default one
如果没有默认构造函数,compiler会帮忙生成一个
转载个例子:
class A{
public A(){} // 1:无参数构造方法。
public A(String s){} // 2.
}
class B extends A{
public B(String s){
super(s); // 3.
}
}
记住一点:在构造子类时,一定会调用到父类的构造方法。因为父类中的元素也需要被初始化。
所以父类要么有一个默认的无参数构造,这样Java会自动调用这个无参数的构造。如果父类没有无参数的构造,那么就要你自己在子类的构造中,通过super()的方式调用父类的构造。
sub class will invoke base class's constructor implicityly
if super constructor is undefined, must explicitly invoke another constructor
子类以一定要调用到父类方法。
子类可以隐式的调用父类默认的构造方法。
如果父类没有默认构造方法,必须显示调用。
Constructor call must be the first statement in the constructor
super() or this(...)
super和this要在第一个statement,不能被同时调用
default constructor is equivalent to the following code
public ASubClass(){
super();
}
默认构造函数会调用父类构造方法
if no constructor defined, compiler will create a default one
如果没有默认构造函数,compiler会帮忙生成一个
转载个例子:
class A{
public A(){} // 1:无参数构造方法。
public A(String s){} // 2.
}
class B extends A{
public B(String s){
super(s); // 3.
}
}
记住一点:在构造子类时,一定会调用到父类的构造方法。因为父类中的元素也需要被初始化。
所以父类要么有一个默认的无参数构造,这样Java会自动调用这个无参数的构造。如果父类没有无参数的构造,那么就要你自己在子类的构造中,通过super()的方式调用父类的构造。
相关文章推荐
- java创建一个子类对象是会调用父类的构造方法会不会创建父类
- Java继承,子类实例化时,调用父类的无参构造方法
- JNI调用Java构造方法,父类方法
- java继承时,实例化子类,是否会默认调用父类构造方法
- Java中子类与父类的构造方法的调用关系
- Java中静态代码块,非静态代码块,以及父类与子类的构造方法的之间调用顺序
- 为什么子类的构造方法一定会调用父类的某个构造方法
- 2018/01/08JAVA 基础 / 接口与继承/Java关键词:变量引用 super 调用父类对象方法/构造方法【或者访问父类对象属性】的方式归纳
- C++和JAVA中一些区别,包括指向子类的引用会调用谁的方法,子类构造函数自动调用父类构造函数时,父构造会调用的谁方法
- Java中子类与父类的构造方法的调用关系
- 错误记录--Java中子类继承父类必须调用父类的构造方法?
- Java之Object构造方法(创建子类对父类构造方法的调用)
- Java子类调用父类的有参和无参的构造方法
- 为什么java的子类中必须调用父类的构造方法
- Java之子类调用父类构造方法之总
- java中实例化子类时会不会调用父类的构造方法?
- Java学习笔记54. 子类对父类构造方法的隐式调用
- Java里子类调用父类构造方法问题
- Java里子类调用父类构造方法问题
- Java中子类与父类的构造方法的调用关系