构造函数
在java语言中构造函数具有以下特点:
- 构造函数必须与类名相同,并且不能有返回值;
- 每个类可以有多个构造函数,如果我们没有提供构造函数,编译器在把源代码编译成字节码的过程中会提供一个没有参数默认的构造函数,但这个构造函数不会执行任何代码。如果我们提供了构造函数,编译器就不会提供默认的构造函数;
- 构造函数可以有1,0,或一个以上的参数;
- 构造函数伴随__new__一起使用,不能被调用;
- 用于完成对象的初始化的操作;
- 构造函数不能被__继承__,所以它不能被覆盖,但是可以被重载;
- 若父类没有提供无参的构造函数,子类可以通过__super__关键字显式的调用父类的构造函数。若提供,则可以__不显示__的调用父类的构造函数
- 当父类和子类都没有定义构造函数时,编译器会为父类生成一个默认的无参数的构造函数,给子类生成一个默认的无参数的构造函数。