构造方法
定义:是写在类中的一种特殊的“成员方法”,它是在类构造对象时要使用的方法,通过这一方法实现对对象的初始化。我们在创建对象时,等号右边new后边的内容便是该类的构造方法(如:new Person(12))。 但是像之前写的一些类,我们并未加入构造方法,这样的情况下,系统会自动添加无参构造方法(如:new Person()).
格式:访问权限 类名(参数类型 参数名,……){
方法体。
}
注意:
1.构造方法的方法名必须与类名一样。
2.构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
3.构造方法是完成对象的初始化工作,它是在创建一个对象时使用new操作进行的,他能够把定义对象时的参数传递给对象的域。
4.构造方法不能由编程人员调用,而要系统调用。
5.当同一个类存在多个构造方法时,java编译系统会自动按照初始化时最后面括号的参数个数以及参数类型来自动一一对应
举例:
//创建一个类
public class Person{
int age;
String name;
//构造方法
//有参数的构造方法
public Person(int age,String name){
this.age = age;
this.name = name;
}
//无参数的构造方法
public Person(){
this.age = 12
this.name = "WP"
}
//创建主方法,在主方法中调用Person类
public static void main(String [] args){
Person p1 = new Person(18,"ML");//调用有参数的构造方法
Person p2 = new Person();//调用无参数的构造方法
System.out.println("学生年龄:"+p1.age+"学生姓名:"+p1.name);
System.out.println("学生年龄:"+p2.age+"学生姓名:"+p2.name);
}
}
//输出框内:
学生年龄:18学生姓名:ML
学生年龄:12学生姓名:WP
这里要对this的作用进行一下说明:
this表示:当前类自己的对象(就是说可以把他看成一个对象,还是自己类的对象。)
类似this作用还有一个关键字:super
super表示:当前类的父类对象(就是说可以把他看成一个对象,还是自己父类的对象。)