首页 > 其他分享 >实验十三

实验十三

时间:2023-11-13 09:33:34浏览次数:31  
标签:十三 System int 实验 static public color out

设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。

实验要求:

1.提交类图;

2.提交源代码;

3.注意编程规范;

4.要求用简单工厂模式和单例模式实现享元工厂类的设计。

类图

public class BlackChess implements ChessPiece{
    public void display(int x, int y) {
        System.out.println("黑棋显示在位置 (" + x + ", " + y + ")");
    }
}
import java.util.Scanner;

public class ChessFactory {
    static public int color=1;
    static public int x;
    static public int y;
    public static void getChessPiece() {
        while(true) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入棋子颜色:1.黑色 2.白色");
            color=sc.nextInt();
            if(color!=1&&color!=2) {
                System.out.println("感谢您的使用");
                break;
            }
            System.out.print("请输入横坐标");
            x=sc.nextInt();
            System.out.print("请输入纵坐标");
            y=sc.nextInt();
            if(color==1) {
                BlackChess black =new BlackChess();
                black.display(x,y);
            }
            else if(color==2){
                WhiteChess white =new WhiteChess();
                white.display(x, y);
            }
        }
    }

}
public interface ChessPiece {
    void display(int x, int y);
}
public class Client {
    public static void main(String[] args) {
        ChessFactory chess = new ChessFactory();
        chess.getChessPiece();
    }
}
public class WhiteChess implements ChessPiece{
    public void display(int x, int y) {
        System.out.println("白棋显示在位置 (" + x + ", " + y + ")");
    }
}

 

标签:十三,System,int,实验,static,public,color,out
From: https://www.cnblogs.com/usadingzhen/p/17828462.html

相关文章

  • 软件设计实验10:组合模式
    实验10:组合模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解组合模式的动机,掌握该模式的结构;2、能够利用组合模式解决实际问题。 [实验任务一]:组合模式用透明组合模式实现教材中的“文件夹浏览”这个例子。实验要求:1. 文件的执行不需真正实现,只需简单......
  • 软件设计实验11:装饰模式
    实验11:装饰模式本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解装饰模式的动机,掌握该模式的结构;2、能够利用装饰模式解决实际问题。 [实验任务一]:手机功能的升级用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而......
  • 高飞实验12和13
    packageshiyan12;publicclassClient{publicstaticvoidmain(String[]args){MainFramemainframe=newMainFrame();mainframe.on();}}Clientpackageshiyan12;publicclassCPU{publicbooleanrun(){System.out.......
  • 实验1:UML与面向对象程序设计原则
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图;2、理解面向对象程序设计原则。[实验任务一]:UML复习阅读教材第一章复习UML,回答下述问题:Q:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。A......
  • 实验2:简单工厂模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解简单工厂模式的动机,掌握该模式的结构;2、能够利用简单工厂模式解决实际问题。[实验任务一]:女娲造人使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,......
  • Web漏洞-XSS实验-pikachu靶场5个场景(二)
    ★★实战前置声明★★文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。1、前言上一篇《Web漏洞-XSS理论和靶场小试牛刀(一)》已经介绍了XSS一些理论知识点,本文主要是分享p......
  • vue十三
    <divid="app13">希望翻译成为:<br><selectv-model="obj.lang"><optionvalue="english">英语</option></select><br>请输入:<label......
  • 《Unix/Linux系统编程》教材学习笔记第十三章
    chapter13网络编程内容网络编程内容包括:TCP/IP协议、UDP和TCP协议、服务器-客户机计算、HTTP和Web页面、动态Web页面的PHP和CGI编程。TCP/IP协议TCP/IP(Comer1988,2001;RFC11801991)是互联网的基础。TCP代表传输控制协议。IP代表互联网协议。目前有两个版本的IP,即IPv4和IPv6。......
  • 大型数据库实验四
    实验四--NOSQL和关系数据库的操作比较1、MYSQL数据库操作--新建一个Student表,并将数据录入进去:--SQL语句输出表中的所有记录:--查询zhangsan的computer成绩:--修改lisi的Math成绩,改为95:--使用Java客户端编程向Student表中添加一条数据:--使用java客户端编程查询Student......
  • DHCP实验
    1、检查虚拟机是否安装dhcp 2、因为dhcpd.conf的配置文件是空的,所以我们需要把/usr下的dhcp文件复制覆盖到该该目录下 3、复制该段内容,需要复制8行,8yy 4、如下图更改配置 5、重新启动dhcp服务6、打开一台win的虚拟机,并查看网络设置 #可以看到这是我们刚刚配置的网......