我们在进行构造函数的操作时,和类的名称相同。如果这时候输入不同的参数,那么即使这些构造函数的名字一致,但在实际调用中也是不同的使用方法,这就是重载的方法。下面我们对构造函数的重载概念、特点、以及在代码中重载的实例带来讲解,一起来学习具体的重载方法吧。
1.构造函数重载概念
构造函数重载指的是同一个类里面定义实现了多个不同参数列表的构造函数,虽然这些构造函数的名字都是一样的(和类名一样),但在创建这个类的对象的时候,如果传进去的参数不同,调用的构造函数也是不同的。
2.构造函数特点
构造函数的名称必须与类名相同,区分大小写;
构造函数没有返回值,也不能用void修饰;
构造函数可以用任何访问修饰符(public、protected和private)修饰;
构造函数不能用static、final、abstract和synchronized等关键字修饰;
构造函数不能被覆写(override);
构造函数可以被重载(overload),以参数的个数、类型及顺序区分;
重载意味着一个类里可以有多个构造函数,构造函数1可以调用构造函数2完成对象初始化,通过this关键字:this(参数1,参数2...)实现;
接口里没有构造函数,抽象类里可以有构造函数,也可以没有,抽象类的构造函数在创建继承自抽象类的子类的对象时会被调用;
3.构造函数重载实例
在类中的一个构造函数可以使用this(实参)来调用自己其它的构造函数。
class Person{ private String name; public Person(){ wash(); System.out.println("Person() is using"); } public Person(String name){ this(); this.name = name; System.out.println("Person('zhangsan') is using"); } public void wash(){ System.out.println("washing!!!"); } } class Demo{ public static void main(String[] args){ new Person("zhangsan"); } }
以上就是构造函数在java中的重载方法,当参数发生变化时,对应的构造函数的使用方法也会有所不同,我们这时就可以运用构造方法的重载了,学会后运行代码看看成果吧。