java定义一个学生类stuDATA,追加equals方法判断对象是否相同,StudentAction
时间: 2024-12-03 07:30:47 浏览: 19
在Java中,你可以创建一个名为`StuData`的学生类,包含一些基本属性比如姓名、学号等,并添加一个自定义的`equals()`方法来比较两个`StuData`对象是否表示相同的实体。这个方法通常会检查学生的各项属性是否相等。
```java
public class StuData {
private String name;
private int studentID;
// 构造函数
public StuData(String name, int studentID) {
this.name = name;
this.studentID = studentID;
}
// 定义equals方法来判断对象是否相同
@Override
public boolean equals(Object obj) {
if (this == obj) { // 如果直接比较对象引用,self对象与obj对象指向的是同一内存地址
return true;
}
if (obj == null || getClass() != obj.getClass()) { // 对象为null或不是同类型的对象,则返回false
return false;
}
StuData stuData = (StuData) obj; // 强制类型转换确保对象是StuData类型
return name.equals(stuData.getName()) && studentID == stuData.getStudentID();
}
// 获取姓名和学号的方法
public String getName() {
return name;
}
public int getStudentID() {
return studentID;
}
// 追加一个StudentAction操作,可以代表对学生数据的操作
public interface StudentAction {
void process(StuData stu);
}
}
// 使用示例:
public void performAction(StudentAction action, StuData student) {
action.process(student);
}
```
阅读全文