package com.a;
public class Test16 {
public static void main(String[] args) {
Fruit fruit = FruitGardener.etFruit("apple");
fruit.plant();
fruit.grow();
fruit.harveat();
Fruit fruit2 = FruitGardener.etFruit("Strawberry");
fruit2.plant();
fruit2.grow();
fruit2.harveat();
Fruit fruit3 = FruitGardener.etFruit("grape");
fruit3.plant();
fruit3.grow();
fruit3.harveat();
}
}
interface Fruit{
void plant();
void grow();
void harveat();
}
class Grape implements Fruit{
@Override
public void plant() {
System.out.println("种植葡萄");
}
@Override
public void grow() {
System.out.println("葡萄生长");
}
@Override
public void harveat() {
System.out.println("收获葡萄");
}
}
class Strawberry implements Fruit{
@Override
public void plant() {
System.out.println("种植草莓");
}
@Override
public void grow() {
System.out.println("草莓生长");
}
@Override
public void harveat() {
System.out.println("收获草莓");
}
}
class Apple implements Fruit{
@Override
public void plant() {
System.out.println("种植苹果");
}
@Override
public void grow() {
System.out.println("苹果生长");
}
@Override
public void harveat() {
System.out.println("收获苹果");
}
}
class FruitGardener{
public static Fruit etFruit(String fruitName){
if (fruitName.equalsIgnoreCase("apple")){
return new Apple();
} else if (fruitName.equalsIgnoreCase("Strawberry")){
return new Strawberry();
}else if (fruitName.equalsIgnoreCase("grape")){
return new Grape();
}else {
return null;
}
}
}