构造方法又叫构造器、构造函数、Constructor
构造方法的语法结构:
{修饰符列表} 构造方法名 (形式参数列表) {
构造方法体;
}
回顾一下普通方法结构:
{修饰符列表} 返回值类型 方法名 (形式参数列表) {
方法体;
}
对于构造方法来说,“返回值类型”不需要指定,并且也不能写void,只有写了void,就是普通方法了。
对于构造方法来说,构造方法名必须和类名一致。
构造方法的作用?
构造方法的意义就是,通过构造方法的调用,可以创建对象。
构造方法怎么调用?
----普通方法的调用:方法修饰符有static的时候:类名.方法名(实参列表);方法修饰符没有static的时候:引用.方法名(实参列表)。
----new 构造方法名(实参列表);
构造方法执行之后有返回值吗?
每一个构造方法实际上执行结果之后都有返回值,但是这个“return”语句不需要写,并且返回值类型是构造方法的所在类的类型。
User u = new User();
先执行等式右边的new,创建对象User(),赋给u,u的类型的User。
public class Constructor {
public static void main(String[] args){
new User();
}
}
public class User {
public User(){
System.out.println("User constructor");
}
}
运行结果:
如果:
public class Constructor {
public static void main(String[] args){
User u = new User();
System.out.println(u);
}
}
运行结果:
当一个类显示的构造方法被定义出来了,那么系统则不再默认这个类提供缺省构造器。建议开发中手动的为当前类提供无参数构造方法。因为无参数构造方法太常用了。
手动的为当前类提供无参数构造方法:
构造方法支持方法重载,在一个类中,编写多个构造方法,这多个构造方法显然是构成了方法重载机制。
构造方法的另一个作用:
1、创建对象
2、创建对象的同时,初始化实例变量的内存空间,给实例变量赋值