构造器也叫构造方法(constructor),用于对象的初始化。构造器是一个创建对象时被自动调用的特殊方法,目的是对象的初始化。构造器的名称应与类的名称一致。Java通过new关键字来调用构造器,从而返回该类的实例,是一种特殊的方法。
要点:
1. 通过new关键字调用!!
2. 构造器虽然有返回值,但是不能定义返回值类型,不能在构造器里使用return返回某个值。
3. 如果我们没有定义构造器,则编译器会自动定义一个无参的构造器。不能定义参数,如果已定义则编译器不会自动添加!
4. 构造器的方法名必须和类名一致!
课堂练习:
1. 定义一个“点”(Point)类用来表示二维空间中的点(有两个坐标)。要求如下:
(1) 可以生成具有特定坐标的点对象。
(2) 提供可以设置坐标的方法。
(3)提供可以计算该“点”距另外一点距离的方法。
class Point {
double x, y;
public Point(double _x, double _y) {//构造方法相当于给当前对象赋初值
x = _x;
y = _y;
}
public double getDistance(Point z) {//定义的getdistance方法,在这个方法中调用Point类并命名为z,可以调用这个类的方法和属性。
return Math.sqrt((x - z.x) * (x - z.x) + (y - z.y) * (y - z.y));
}
}
public class TestConstructor {
public static void main(String[] args) {
Point p = new Point(3.0, 4.0);
Point origin = new Point(0.0, 0.0);
System.out.println(p.getDistance(origin));//当前对象调用getdistance方法
}
}
已定义的有参构造方法可以传参,其实就是简化了步骤。
构造方法那一步也可以写成
Point p=new Point();
p.x=3.0;
p.y=4.0;