设计一个Point类,该类包含两个int类型的私有成员变量:x、y。
① 请给出此类的构造方法,分别是一个不带参数的,一个带两个参数的;
② 还要给出对应的get方法和set方法;
③ 最后重写equals方法,来判断Point类的两个实例是否相等。
以下是一个简单的Point类的Java实现,包括构造方法、get和set方法,以及重写的equals方法来判断两个Point实例是否相等:
public class Point {
private int x;
private int y;
// 构造方法:无参数
public Point() {
this.x = 0;
this.y = 0;
}
// 构造方法:带两个参数
public Point(int x, int y) {
this.x = x;
this.y = y;
}
// 获取x坐标的方法
public int getX() {
return x;
}
// 设置x坐标的方法
public void setX(int x) {
this.x = x;
}
// 获取y坐标的方法
public int getY() {
return y;
}
// 设置y坐标的方法
public void setY(int y) {
this.y = y;
}
// 重写equals方法来判断两个Point实例是否相等
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true; // 如果是同一个对象,直接返回true
}
if (obj == null || getClass() != obj.getClass()) {
return false; // 如果对象为空或者类型不同,返回false
}
Point point = (Point) obj; // 将obj转换为Point类型
// 判断x和y坐标是否相等
return x == point.x && y == point.y;
}
}
这个Point类包含了两个私有成员变量 x
和 y
,以及无参数和带两个参数的构造方法,以及相应的get和set方法。最后,它重写了equals方法来判断两个Point实例的坐标是否相等。你可以根据需要使用这个Point类来创建Point对象并进行比较。