构造方法是指在创建给定类的实例时调用的一个方法。它们与类同名,但不具备任何返回类型
当使用关键字new创建类的实例时,java为对象分配内存,初始化实例变量并调用构造方法。每个类都 定义有构造方法,以便 初始化其成员变量,在创建类的对象时,将自动调用该类的构造方法,可以将值传递给构造方法,因此,构造方法可通过初始化成员变量和创建对象的环境来初始化对象。
构造方法有两种类型,分别是参数化构造方法和隐式/默认构造方法
1、参数化构造方法
此类构造方法可在类定义中进行编码。在创建类时,传递的值和构造方法的参数应当在个数,次序和数据类型上匹配。带参数构造方法的定义如下:
class Book{
String bookName;
String authorName;
Int nopages;
Boolean available;
Book(String book,String author,int pages,boolean status){
bookName=book;
authorName=author;
nopages=pages;
available=status;
}
}
2、隐式构造方法
当一个类未定义构造方法时,java虚拟机便 提供一个默认构造方法,它不带作保参数,其主体不住任何语句。
构造方法的特点如下
(1)它的名字与类同名。
(2)没有返回值类型也不能用void修饰。
(3)一个类可以有不同参数列表的构造方法,即构造方法可以重载
(4)如果程序员未定义构造方法,系统会提供默认构造方法。
(5)如果程序员定义了一个或多个构造方法,则系统将自动屏蔽默认的构造方法。
(6)构造方法不能说明为native、abstract、synchronized或final也不能从父类继承构造方法。