设计一个Dog类,有名字、颜色、年龄等属性,定义构造方法来初始化这些属性,定义方法输出Dog的信息。编程应用程序使用Dog类:使用数组来记录多条Dog,然后从数组中同名字来查询Dog,如果找到就打印出Dog信息,没有找到就提示没有此Dog。
时间: 2024-10-11 12:09:06 浏览: 31
设计一个名为`Dog`的类,我们可以这样实现:
```java
public class Dog {
private String name;
private String color;
private int age;
// 构造方法用于初始化属性
public Dog(String name, String color, int age) {
this.name = name;
this.color = color;
this.age = age;
}
// 定义方法输出Dog的信息
public void printInfo() {
System.out.println("Name: " + name + ", Color: " + color + ", Age: " + age);
}
// 重写equals方法来按名字查找Dog
@Override
public boolean equals(Object obj) {
if (obj instanceof Dog) {
Dog otherDog = (Dog) obj;
return this.name.equals(otherDog.name);
}
return false;
}
}
// 主程序部分
public class Main {
public static void main(String[] args) {
// 创建一个Dog数组来存储多条Dog
Dog[] dogArray = new Dog[3];
dogArray[0] = new Dog("Max", "Brown", 5);
dogArray[1] = new Dog("Molly", "White", 3);
dogArray[2] = new Dog("Charlie", "Black", 7);
// 按名字查询Dog并打印信息
for (Dog dog : dogArray) {
if (findDogByName(dogArray, "Max")) {
dog.printInfo();
} else {
System.out.println("No dog named Max found.");
}
}
// 查找函数
private static boolean findDogByName(Dog[] dogs, String targetName) {
for (Dog dog : dogs) {
if (dog.equals(targetName)) {
return true;
}
}
return false;
}
}
}
```
在这个例子中,我们创建了一个`Dog`类,包含名字、颜色和年龄属性,并定义了构造方法和打印信息的方法。主程序中通过`Dog`数组存储多只狗,并使用自定义的`findDogByName`函数按名字查找狗,如果找到则打印其信息,找不到则显示相应的提示。
阅读全文