以下为《实验报告8 抽象工厂模式 --加练》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
重庆***
实验报告
课程 软件工程与软件设计模式
学院 大数据与计算机***
专业 计算机科学与技术
年级 2022 级
学号 ***10
姓名 刘某某
指导教师 蒋某某
重庆***大数据与计算机***
2022-2023学年第2学期
实验任务
抽象工厂模式
姓名
刘某某
操作性质
基本操作 ( ) 验证性操作( )
综合性操作( ) 设计性操作(√)
日期
2023-4-23
成绩
教师评价:
实验预习( ) 实验操作( )实验结果( )实验报告( )
教师签名:
实验要求:
完成实验内容,并完善本实验报告,包括主要代码和操作步骤截图。
实验内容
用抽象工厂模式设计农场类。
分析:农场中除了像畜牧场一样可以养动物,还可以培养植物,如养马、养牛、种菜、种水果等,所以本实例比前面介绍的畜牧场类复杂,必须用抽象工厂模式来实现:
注意:里面涉及到的图片可自行去网站下载
画出对应的类图;
参考代码如下(个别地方需要简单调整哟;另外显示图片的位置也需要哟)
package AbstractFactory;
import java.awt.*;
import javax.swing.*;
public class FarmTest {
public static void main(String[] args) {
try
{
Farm f;
Animal a;
Plant p;
f=(Farm) ReadXML.getObject();
a=f.newAnimal();
p=f.newPlant();
a.show();
p.show();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
}
//抽象产品:动物类
interface Animal {
public void show();
}
//具体产品:马类
class Horse implements Animal
{
JScrollPane sp;
JFrame jf = new JFrame("抽象工厂模式测试");
public Horse() {
Container contentPane = jf.getContentPane();
JPanel p1 = new JPanel();
p1.setLayout(new GridLayout(1,1));
p1.setBorder(BorderFactory.createTitledBorder("动物:马"));
sp = new JScrollPa 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 ("新类名:"?+?cName);????????????Class?c?=?Class.forName(cName);????????????Object?obj?=?c.newInstance();????????????return?obj;????????}?catch?(Exception?e)?{????????????e.printStackTrace();????????????return?null;????????}????}}
主要操作代码整理与实验结果展示
类图:
实验结果截图:
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]
以上为《实验报告8 抽象工厂模式 --加练》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。