刚接触到构造方法时分不清它和一般函数的区别,下面进行了一些总结。
构造函数的定义
1.方法名与类名相同。
2.在方法名的前面没有返回值声明类型。
3.在方法中不能使用return语句返回一个值。
构造函数的小细节
对象一建立就会调用与之对应的构造函数,当一个类中没有定义构造函数时,那么系统会默认
给该类加入一个空参的构造函数,当在类中自定义了构造函数后,默认的构造函数就没有了。
构造函数和一般函数的区别
1.写法不同(见定义)
2.运行不同(构造函数是在对象一建立就运行,给对象初始化,只运行一次。
一般方法是对象调用才执行,是给对象添加具备的功能,可重复调用)
例子:
package leiheduixiang;
class Person{
private String name;
private int age;
Person(){ //构造函数一
System.out.println("A:name="+name+",,age="+age);
}
Person(String n){ //构造函数二
name = n;
System.out.println("B:name="+name+",,age="+age);
}
Person(String n,int a){ //构造函数三
name = n;
age = a;
System.out.println("C:name="+name+",,age="+age);
}
}
public class demon04 {
public static void main(String[] args){
Person p1 = new Person();
Person p2 = new Person("zhangsan");
Person p3 = new Person("lisi",16);
}
}
结果
A:name=null,,age=0
B:name=zhangsan,,age=0
C:name=lisi,,age=16