在生成函数的时候的第一句”super()”的作用是“调用该类的父类的无参数构造函数”。虽然这里没有用继承,但是Java中的任何类,包括用户自己创建的类,都是继承自同一个“根”Object类。由于继承的存在,对象的创建过程比较复杂:假设B继承A,那么B的构造函数的第一步必须调用A的构造函数(如果A还有父类,那么继续调用该父类的构造函数,依次类推,直至回溯到Object这个根)。Super()如果不写,Java编译器会插入一个对A的无参数构造函数的调用super(),所以函数中的super其实可以不用写。如果没有无参数构造函数,那么就只能手工加入对A的参数构造函数的调用:super(参数1,参数2,…)。
关于super()
最新推荐文章于 2022-09-09 10:15:30 发布