Java在执行子类的构造函数之前,会先调用父类中没有参数的构造函数,其目的是什么?

如题所述

第1个回答  2006-07-06
这是继承的一种规则,如果你在子类中调用父类的方法而父类又没有初始化你怎么调用,所以在初始化子类时java会自动创建一个父类本回答被网友采纳

Java在执行子类的构造函数之前,会先调用父类中没有参数的构造函数,其...
这是继承的一种规则,如果你在子类中调用父类的方法而父类又没有初始化你怎么调用,所以在初始化子类时java会自动创建一个父类

为什么在实例化子类的对象的时候会调用先调用父类的构
因为子类继承父类之后,获取到了父类的内容(属性\/字段),而这些内容在使用之前必须先初始化,所以必须先调用父类的构造函数进行内容的初始化.

java中无参数构造方法有何作用?
1、java中无参数构造方法的存在是因为在创建子类的时候实例化对象报错。2、创建子类的对象实例的时候,必先调用父类的无参数的构造函数(默认构造函数),假如父类有带参数的构造函数,那么系统将不会给它创建无参数的构造函数,这时,子类在实例化的时候,因为找不到父类的默认构造函数,编译器将会报错...

java进行构造方法的时候,为什么一定要有一个无参构造方法?
1.子类继承父类的时候会自动继承父类的默认构造函数(也就是继承那个无参数的构造函数)。2.无参构造函数是所有构成函数的父类,如果没有写那个默认的不带参数的构造函数的话,继承的时候子类就会报错,因为系统不知道要不继承哪个构造函数,必须明确的使用super()关键字来描述。所以一般为了避免这种错误...

子类为什么要调用父类的构造函数
在Java中,子类的构造过程中,必须 调用其父类的构造函数, 所以说,子类对象比父类对象大,子类对象里面包含了一个父类的对象,这是内存中真实的情况. 构造方法是new一个对象的时候,必须要调的方法,这是规定,要new父类对象出来,那么肯定要调用其构造方法,所以 第一个规则:子类的构造过程中,必...

...时会默认调用父类中无参的构造函数,然后在调用子类的构造函数...
public static void main(String[] args) throws IOException { B b = new B();} } class A{ public A() { System.out.println("A类的无参数构造方法");} } class B extends A{ public B() { \/\/这里面不写,系统也会默认的调用super(),即父类的无参构造。\/\/不管子类的无参构造还是...

java中为什么父类必须有无参构造方法才能被子类继承?
你在Xx类里定义了一个带参数的构造方法,那么这个Xx类就没有无参数的构造方法了。子类在继承父类时,如果没有相同的带参构造方法,那么他就需要在其构造方法中明确的通过super()调用父类的带参构造方法,否则构造不出父类,从而也构造不出他自己了。你如果在父类中写个不带参数的构造方法,就可以不...

Java构造函数 为什么需要无参构造函数
补充下楼上的回答~~“但是如果你创造了一个带有参数的构造方法,那么无参的构造方法必须显式的写出来,否则会编译失败"这句话有点不妥,应该这么理解:每个类至少要有一个构造函数,如果你自己构建了一个带有参数的构造函数而没有再显示的写出无参的构造函数也是可以的,不过当你尝试通过一个无参的...

无参数调用什么意思
1、java中无参数构造方法的存在是因为在创建子类的时候实例化对象报错。2、创建子类的对象实例的时候,必先调用父类的无参数的构造函数(默认构造函数),假如父类有带参数的构造函数,那么系统将不会给它创建无参数的构造函数,这时,子类在实例化的时候,因为找不到父类的默认构造函数,编译器将会报错...

JAVA的父类中是不是一定要有无参数的构造方法?为什么我不在父类中写空...
有时有必要的显示的写出这个默认构造函数,也就是无参构造函数。所以当这个类被继承时,子类就会默认的调用这个无参构造方法。如果你想显示的调用父类的构造方法,可以使用super()在子类的构造方法中的第一句。(构造方法中只能调用构造方法一次)。如果你在父类中没有写无参构造方法,那么在子类的构造...

相似回答