public interface Fruit {
void printInfo();
}
public class Apple implements Fruit{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("苹果");
}
}
public class Banana implements Fruit{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("香蕉");
}
}
public class Orange implements Fruit{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("橙子");
}
}
public interface Vegetable {
public void printInfo();
}
public class Tomato implements Vegetable{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("西红柿");
}
}
public class Cabbage implements Vegetable{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("白菜");
}
}
public class Eggplant implements Vegetable{
@Override
public void printInfo() {
// TODO Auto-generated method stub
System.out.println("茄子");
}
}
public class FruitFactory extends PlantFactory{
public static final int APPLE=1;
public static final int BANANA=2;
public static final int ORANGE=3;
@Override
public Fruit getFruit(int fruitType){
if(fruitType==APPLE){
return new Apple();
}
if(fruitType==BANANA){
return new Banana();
}
if(fruitType==ORANGE){
return new Orange();
}
return null;
}
@Override
Vegetable getVegetable(int vegetableType) {
// TODO Auto-generated method stub
return null;
}
}
public class VegetableFactory extends PlantFactory {
public static final int CABBAGE=1;
public static final int TOMATO=2;
public static final int EGGPLANT=3;
@Override
Fruit getFruit(int fruitType) {
// TODO Auto-generated method stub
return null;
}
@Override
public Vegetable getVegetable(int vegetableType) {
// TODO Auto-generated method stub
if(vegetableType==CABBAGE){
return new Cabbage();
}
if(vegetableType==TOMATO){
return new Tomato();
}
if(vegetableType==EGGPLANT){
return new Eggplant();
}
return null;
}
}
public abstract class PlantFactory {
abstract Fruit getFruit(int fruitType);
abstract Vegetable getVegetable(int vegetableType);
}
public class Plantation {
public static final int FRUIT=1;
public static final int VEGETABLE=2;
public static PlantFactory getFactory(int factoryType){
if(factoryType==FRUIT){
return new FruitFactory();
}
if(factoryType==VEGETABLE){
return new VegetableFactory();
}
return null;
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
FruitFactory fruitFactory=(FruitFactory)Plantation.getFactory(Plantation.FRUIT);
Apple apple=(Apple) fruitFactory.getFruit(FruitFactory.APPLE);
apple.printInfo();
VegetableFactory vegetableFactory=(VegetableFactory)Plantation.getFactory(Plantation.VEGETABLE);
Tomato tomato=(Tomato) vegetableFactory.getVegetable(VegetableFactory.TOMATO);
tomato.printInfo();
}
苹果 西红柿
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有