1. 创建一个Java project,项目名为Pet。用以实现给宠物喂食物的功能。 2. 按照如下要求创建一组类: src |--com |--pet |--animal |--Dog.java |--food |--Food.java |--Meat.java |--Bone.java |--MainApp.java 3. Meat和Bone继承Food类,他们都覆写了Food类中needMoney()函数,用以返回费用值。Meat为30元;Bone为15元。 4. 在Dog类中实现一个方法:int eat(Food food, int money),money为原有的钱,给每次调用,根据食物价格进行扣款,返回剩余的钱。 5. 在MainApp类中创建一个main函数,用于给宠物喂食物。设计一周的菜谱(一天一种食物),以及总的费用200元。 打印输出每天宠物吃的食物,以及资金的结余。
时间: 2023-06-08 09:05:39 浏览: 300
动物类的Java程序
好的,你的问题已经收到。根据你的要求,下面是实现Java project Pet的具体步骤:
1. 打开Eclipse或其他Java IDE,创建一个Java project,项目名为Pet。
2. 在src目录下,按照要求创建com.pet.animal和com.pet.food这两个包,并在animal和food包中分别创建Dog、Food、Meat和Bone这四个类。
3. 首先,定义Food类的代码如下:
```
package com.pet.food;
public class Food {
public int needMoney() {
return 0;
}
}
```
其中,needMoney()函数返回0。因为这是一个基类,具体的费用值需要在其派生类中定义。
接下来,定义Meat类和Bone类,它们继承自Food,并分别覆写了父类的needMoney()函数,代码如下:
```
package com.pet.food;
public class Meat extends Food {
@Override
public int needMoney() {
return 30;
}
}
package com.pet.food;
public class Bone extends Food {
@Override
public int needMoney() {
return 15;
}
}
```
可以看到,Meat的费用为30元,Bone的费用为15元。
4. 接下来,实现Dog类中的eat()方法。代码如下:
```
package com.pet.animal;
import com.pet.food.Food;
public class Dog {
private int money;
public Dog(int money){
this.money = money;
}
public int eat(Food food, int money){
int foodMoney = food.needMoney();
if(money >= foodMoney) {
money -= foodMoney;
System.out.println("Dog eats " + food.getClass().getSimpleName() + ". The remaining money is " + money + ".");
}else{
System.out.println("Not enough money!");
}
return money;
}
}
```
可以看到,eat()方法接受一个Food对象和一个原有的钱数,返回剩余的钱数。根据食物价格进行扣款,输出每次剩余的钱数,并返回最终的剩余钱数。如果钱数不够,则输出“Not enough money!”提示。
5. 最后,创建MainApp类,在其main()函数中设计一个菜单并且创建Dog对象。代码如下:
```
package com.pet;
import com.pet.animal.Dog;
import com.pet.food.Bone;
import com.pet.food.Food;
import com.pet.food.Meat;
public class MainApp {
public static void main(String[] args) {
Dog myDog = new Dog(200);
Food[] menu = new Food[] {new Meat(), new Bone(), new Meat(), new Bone(), new Meat(), new Bone(), new Meat()};
for(int i=0; i<menu.length; i++) {
Food foodToday = menu[i];
System.out.println("Today's food is " + foodToday.getClass().getSimpleName() + ".");
myDog.eat(foodToday, myDog.money);
}
}
}
```
可以看到,我们创建了一个Dog对象myDog,并设计了一个菜单menu,其中每天都吃一种食物。最后遍历菜单,并调用myDog的eat()方法喂食。
好了,以上就是实现Java project Pet的详细步骤。祝你成功!
阅读全文