编写程序 Dog.java ,要求要覆盖继承自 Object 类中的 equals() 和 toString() 方法。按模板要求,将【代码】处替换成相应的 Java 程序。注意代码中的输出要求。 public class Dog { String name; int weight; // 重量 public Dog(String name, int weight) { this.name = name; this.weight = weight; } [ 代码 1]{//Override 覆盖 Object 类的 toString() 方法 return this.name + " 重 " + this.weight + " 公斤 "; } //Override 覆盖 Object 类的 equals 方法 @Override public boolean equals(Object obj) { if(this == obj) { return true; } if([ 代码 2]) { // 如果 obj 是 Dog 类的实例 Dog dog = (Dog)obj; if([ 代码 3]) { // 根据重量和名字判断两条狗是否相等,相等则返回 true return true; } } return false; } //Override 覆盖 Object 类的 hashCode 方法 @Override public int hashCode() { return [ 代码 4] // 要求能够根据狗的重量和名字返回狗的 hashCode } public static void main(String[] args) { Dog dog1 = new Dog("DaHuan", 10); Dog dog2 = new Dog("DaHuan", 10); System.out.println(dog1);// 应该显示: "DaHuan 重 10 公斤 " System.out.println([ 代码 5]);// 调用 equals 方法,判断 dog1 和 dog2 是否相等,应该显示: "true" System.out.println(dog1 == dog2); // 为什么显示的是 "false"? } }