构造方法作用就是给实例化对象的属性初始化
特点:1:名字和类名一致
2:无返回值无void
3:每个类至少有一个构造器,若未定义系统默认提供无参构造器,若类没定义就用默认的
4:一个类有多个构造器叫重载,参数列表不同
5:提供有参构造,无参构造函数可省(最好都带上)
6:构造方法不能手工调用,跟new运算符后面由系统调用,且只被调用一次
------------------------------------------------------------------------------
package 构造方法的使用;
import java.util.jar.Attributes.Name;
/*
* 构造方法的使用
*/
public class Person {
String name;
int height;
int wight;
int id;
// 无参构造方法
public Person() {
System.out.println("我是无参构造方法");
}
// 有参构造方法
public Person(String _name, int _height, int _wight, int _id) {
this.name = _name;
this.height = _height;
this.wight = _wight;
this.id = _id;
System.out.println("我是有参的构造方法");
}
{
System.out.println("我是构造代码块,我在构造方法前就执行了");
}
}
----------------------------------------------------------
package 构造方法的使用;
public class TestPerson {
public static void main(String[] args) {
// 无参构造方法需要在new对象的时候给属性赋值
Person p = new Person();
p.height = 182;
p.wight = 130;
p.id = 10;
p.name = "Nisar";
// 有参的构造方法,直接在创建对象的时候通过参数就能给属性赋值,不用再单独调用的
Person pp = new Person("Nar", 170, 130, 22);
}
}
}
----------------------------------打印结果:-------------------------------------------------------
我是构造代码块,我在构造方法前就执行了
我是无参构造方法
我是构造代码块,我在构造方法前就执行了
我是有参的构造方法