编写Order类,判断类中创建的两个对象是否相等。

题目描述:

编写Order类,有int型的orderId,String型的orderName,相应的getter()和setter()方法,两个参数的构造器,重写父类的equals()方法:public boolean equals(Object obj),并判断类中创建的两个对象是否相等。

题目解析:

判断类中创建的两个对象是否相等。即判断Order类中对象的属性都相等。

代码描述:

public class Order {
    public int orderId;
    public String orderName;
    public Order(int orderId, String orderName) {
        this.orderId = orderId;
        this.orderName = orderName;
    }
    public int getOrderId() {
        return orderId;
    }
    public void setOrderId(int orderId) {
        this.orderId = orderId;
    }
    public String getOrderName() {
        return orderName;
    }
    public void setOrderName(String orderName) {
        orderName = orderName;
    }
    public boolean equals(Object obj){
    //obj对象可能是Object类、Order类(向下转型)。
        if(obj instanceof Order){
            Order o=(Order)obj;
            if(this.orderId==o.orderId&&this.orderName.equals(o.orderName)){
                return true;
            }
        }
        return false;
    }
}


public class Test {
    public static void main(String[] args) {
        Order order1=new Order(1,"zhangsan");
        Order order2=new Order(1,"zhangsan");
        System.out.println(order1.equals(order2));
    }
}
发布了75 篇原创文章 · 获赞 14 · 访问量 1907

猜你喜欢

转载自blog.csdn.net/qq_45328505/article/details/104475507