1.什么是构造方法?
构造方法是一个比较特殊的方法,通过构造方法可以完成对象的创建,以及实例对象的初始化,换句话说:构造方法是用来创建对象,并且同时给对象的属性赋值。
2.构造方法的作用
- 创建对象
- 给属性赋值
注意:
1.一个类中必定会有构造方法,如果没有自己定义构造方法,系统会自己默认创建一个无参构造方法,如果自己定义了构造方法,系统将不会自己创建构造方法;
2.实例变量在定义后没有赋值,系统将给它赋默认值
例如:
public class Test13 {
public static void main(String[] args) {
car car = new car();
System.out.println(car.brand);
System.out.println(car.price);
}
public static class car{
String brand;
int price;
}
}
String 类型默认值是null ;int 等基本数据类型默认值是0.
注意:
实例变量实在构造方法执行的过程中完成初始化的,完成赋值的。
3.当你创建了一个有参的构造方法但是又想使用无参构造方法,那无参的构造方法系统不会默认提供,需要自己手动写出无参构造方法。
3.构造方法怎么调用
使用new运算符来调用构造方法
public class Test13 {
public static void main(String[] args) {
add add = new add("西瓜");//new调用有参构造方法
System.out.println(add.brand);
}
}
class add {
String brand;
int price;
public add(){//无参构造方法
}
public add(String 比亚迪){//有参构造方法
brand=比亚迪;
}
}
注意:
- 修饰符列表前统一写:public 千万不要写public static。
- 构造方法名必须和类名一致。
- 构造方法不需要指定返回值类型,也不能写void,写上void表示普通方法,就不是构造方法了。
4.构造方法的重载
构造方法支持重载,在一个类当中构造方法可以有多个,并且所有的构造方法名字都是一样的。如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个无参数构造方法
5.调用方法和调用构造方法的区别
调用方法:
类名.方法名();
例如:
Student.name();(同一个类中类名可以省略不写,即name();)
调用构造方法:
类名 变量名=new 类名();
例如:
Student student=new Student();(变量名的首字母要小写)