系统在生成对象时,会为其分配内存空间,并自动调用构造方法对实例变量进行初始化。
构造方法
赋值用set方法可以,那能否在创建对象时给不同的对象赋值呢。构造方法可以。
构造方法是一种特殊的方法,Java中每个类都有构造方法,用来初始化类的对象,构造方法有以下几个特点:
- 构造方法名字与类名相同;
- 构造方法没有返回值类型(修饰符void也不能有);
- 构造方法通常被声明为public,当然也可以private,表明不能在其他类中实例化;
- 构造方法可以有任意多个参数;
- 构造方法的主要作用是完成对象的初始化;
- 构造方法不能再程序中显式的调用,在生成对象时,系统会自动的调用该类的构造方法进行初始化;
- Java为每个类提供了默认的,没有参数,方法体为空的构造方法。如果自己写了构造方法,那么默认的构造方法就会被覆盖掉;
- 声明构造方法时一般声明两个构造方法,一个带参数,一个默认的构造方法。
构造方法的例子:public animal(){
}
this在构造方法中的使用
在一个构造方法中可以调用另一个构造方法,具体形式为 this(参数); 而且这种调用必须在该构造方法中的第一行。