特点:
1、函数名与类名相同。2、不用定义返回值类型。
3、没有具体的返回值。
P.S.
在构造函数前面加上返回值就只是一般函数了。
作用:给对象进行初始化。
示例:
class Person{
private String name ;
private int age ;
//定义一个Person类的构造函数
//构造函数,而且是空参数的
Person(){
System.out.println("person run");
}
public void speak(){
System.out.println(name + ":" + age);
}
}
class ConsDemo{
public static void main(String[] args){
//构造函数:构建创造对象时调用的函数
//作用:可以给对象进行初始化
Person p = new Person();
p.speak();
}
}
P.S.
1、一般函数和构造函数什么区别呢?
1、一般函数和构造函数什么区别呢?
构造函数:对象创建时,就会调用与之对应的构造函数,对对象进行初始化。
一般函数:对象创建后,需要函数功能时才调用。
构造函数:对象创建时,会调用并且只调用一次。
一般函数:对象创建后,可以被调用多次。
一般函数:对象创建后,需要函数功能时才调用。
构造函数:对象创建时,会调用并且只调用一次。
一般函数:对象创建后,可以被调用多次。
2、创建对象都必须要通过构造函数初始化。
一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数构造函数。
如果在类中定义了指定的构造函数,那么类中的默认构造函数就没有了。
3、多个构造函数是以重载的形式存在的。
示例:
class Person{
private String name ;
private int age ;
Person(){
name = "baby" ;
age = 1;
System.out.println("person run");
}
//如果有的孩子一出生就有名字
Person(String n){
name = n;
}
//如果有的孩子一出生就有名字和年龄
Person(String n, int a){
name = n;
age = a;
}
public void speak(){
System.out.println(name + ":" + age);
}
}
class ConsDemo{
public static void main(String[] args){
Person p1 = new Person();
p1.speak();
Person p2 = new Person("旺财" );
p2.speak();
Person p3 = new Person("小强" ,10);
p3.speak();
}
}