宠物类 人类喜欢养宠物猫咪和狗狗,很喜欢给它们取可爱的名字; 宠物有不同的品种、颜色、年龄;它们很喜欢吃饭和睡觉。 要求:使用封装、继承、抽象类等知识点,Java编程实现。
时间: 2023-07-10 07:14:02 浏览: 136
使用Java语言为基础,MySQL作为数据库所实现的宠物领养系统,带程序代码、数据库文件以及运行视频
5星 · 资源好评率100%
好的,我来为您编写一个宠物类的Java代码:
```java
//抽象类Pet
abstract class Pet {
private String name; //宠物名字
private int age; //宠物年龄
private String color; //宠物颜色
public Pet(String name, int age, String color) {
this.name = name;
this.age = age;
this.color = color;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getColor() {
return color;
}
//抽象方法,各种宠物的喜好不同,需要子类自己实现
public abstract void eat();
//抽象方法,各种宠物的睡眠时间不同,需要子类自己实现
public abstract void sleep();
}
//猫咪类Cat,继承自Pet类
class Cat extends Pet {
public Cat(String name, int age, String color) {
super(name, age, color);
}
//实现Pet类中的抽象方法
public void eat() {
System.out.println("猫咪喜欢吃鱼和肉");
}
public void sleep() {
System.out.println("猫咪睡觉时间很长,喜欢在温暖的地方睡觉");
}
}
//狗狗类Dog,继承自Pet类
class Dog extends Pet {
public Dog(String name, int age, String color) {
super(name, age, color);
}
//实现Pet类中的抽象方法
public void eat() {
System.out.println("狗狗喜欢吃肉和骨头");
}
public void sleep() {
System.out.println("狗狗睡觉时间相对较短,喜欢在主人身边睡觉");
}
}
//测试类Test
public class Test {
public static void main(String[] args) {
Pet pet1 = new Cat("小花", 2, "白色"); //创建一只猫咪
Pet pet2 = new Dog("小黑", 1, "黑色"); //创建一只狗狗
System.out.println("宠物1:" + pet1.getName() + ",年龄:" + pet1.getAge() + ",颜色:" + pet1.getColor());
pet1.eat();
pet1.sleep();
System.out.println("宠物2:" + pet2.getName() + ",年龄:" + pet2.getAge() + ",颜色:" + pet2.getColor());
pet2.eat();
pet2.sleep();
}
}
```
这个程序中,我们定义了一个抽象类Pet,其中包含了宠物的名字、年龄、颜色等属性,以及吃饭和睡觉两个抽象方法。然后定义了两个子类Cat和Dog,分别实现了Pet类中的抽象方法。最后在测试类Test中创建了一只猫咪和一只狗狗,并调用它们自己的方法。
阅读全文