PTA-6-44 水果接口-工厂设计模式

用工厂设计模式编写程序代码。已知有如下Fruit接口,请编写其子类Apple类与Orange类,另外再编写一个Factory工厂类,具体要求如下。

需要编写Fruit接口的子类:

两个子类Apple和Orange,实现接口Fruit,并覆写eat()方法。

需要编写工厂类Factory:

设计一个工厂类Factory,包含一个getInstance(String name)方法,此方法返回值为接口Fruit的子类实例对象。

已有的水果接口定义如下:

java 复制代码
import java.util.Scanner;
interface Fruit{
    void eat();
}

已有的Main类定义:

java 复制代码
/* 请在这里填写答案 */

public class Main{
    public static void main(String[] args) {
    String s;
    Scanner scan=new Scanner(System.in);    
    s=scan.next();
    Fruit f=Factory.getInstance(s);
    if(f==null)
        System.out.println("没有此水果类型");
    else    
        f.eat();
    }
}

根据题目要求,代码实现如下:

java 复制代码
class Apple implements Fruit {
	@Override
	public void eat() {
		System.out.println("吃苹果啦啦啦!!");
	}
}

class Orange implements Fruit {
	@Override
	public void eat() {
		System.out.println("吃橘子啦啦啦!!");
	}
}

class Factory {
	public static Fruit getInstance(String s) {
		if(s.equalsIgnoreCase("apple"))
			return new Apple();
		else if(s.equalsIgnoreCase("orange"))
			return new Orange();
		else
			return null;
	}
}


以上就是 PTA-6-44 水果接口-工厂设计模式的全部内容了,希望能对你有所帮助!

相关推荐
E_ICEBLUE1 分钟前
Python 处理 Word 文档中的批注(添加、删除)
开发语言·python·microsoft·word
itachi-uchiha9 分钟前
关于Tomcat的页面后台管理默认设置
java·tomcat·firefox
骑着bug的coder12 分钟前
RestTemplate 和 Feign 传参差异导致的接口调用失败
java
momo_via25 分钟前
maven下载与安装及在IDEA中配置maven
java·maven·intellij-idea
勇闯逆流河27 分钟前
【C++】红黑树详解
开发语言·数据结构·c++
Deschen35 分钟前
设计模式-适配器模式
java·设计模式·适配器模式
开发游戏的老王39 分钟前
虚幻引擎虚拟制片入门教程 之 模型资源的导入
java·游戏引擎·虚幻
编啊编程啊程1 小时前
【004】生菜阅读平台
java·spring boot·spring cloud·dubbo·nio
Craaaayon1 小时前
【数据结构】二叉树-图解广度优先搜索
java·数据结构·后端·算法·宽度优先
岁岁岁平安1 小时前
Java+SpringBoot+Dubbo+Nacos快速入门
java·spring boot·nacos·rpc·dubbo