Java基础 构造函数的作用、构造函数的关键点、构造函数和普通函数的区别
Java构造函数,也叫构造方法,是java中一种特殊的函数。
作用:
- 创建对象,使用new关键字
Animal animal = new Animal();
创建对象 - 对象属性设置初始值。构造函数创建对象后,无参构造函数设置初始值为null或0,有参构造设置相应的初值。
注意点:
- 构造函数名与当前类名相同,如果不写构造函数会默认生成无参构造函数。
- 构造函数无返回值并不用写void。
- 如果定义了任意的构造方法,默认的构造函数都会消失。
- 可以对构造函数方法进行重载。
- 构造函数可以有参数也可以没有参数,还可以有一个参数或者多个参数
- 构造函数随着new操作一起调用
构造函数和普通函数的区别:
- 构造函数是对象一建立就运行,一般函数是对象调用才执行,用“.方法名”方式执行
- 一个对象建立,构造函数只能运行一次。一般函数可以被该对象多次调用
- 构造函数无返回值不用写void,一般方法无返回值写void
下面是求圆面积的方法,该方法定义了有参无参两种构造函数。
public class Circle {
public double r; // 半径
public final double PI = 3.14;
// 求面积
public double area(double r) {
return r * r * PI;
}
// 无参构造
public Circle() {
}
// 有参构造
public Circle(double r) {
this.r = r;
}
}
下面是测试类,可以看出无参构造需要通过创建出来的对象给半径r赋值。当参数较多时有参构造赋值比较方便。
public class CircleTest {
public static void main(String[] args) {
System.out.println("----------无参构造------------");
Circle circle = new Circle();
circle.r = 5.0;
System.out.println("圆形面积为:" + String.format("%.2f", circle.area(2.3)));
System.out.println("----------有参构造------------");
Circle circle1 = new Circle(5.3);
System.out.println("圆形面积为:" + String.format("%.2f", circle.area(2.3)));
}
}
每天进步一点点!