专业软件设计师网站|培训机构|服务商(加客服微信:cnitpm或QQ:800184589进软件设计师学霸群)

软题库 培训课程
当前位置:信管网 >> 软件设计师 >> 案例分析 >> 文章内容
现要开发一个网络围棋程序允许多个玩家联机下棋。由于只有一台服务器,为节内存空间,采用享元模式实现该程序,得到如图6-1所的类图。
来源:信管网 2021年11月08日 【所有评论 分享到微信

阅读下列说明和Java代码,将应填入(n)处的字句写在题纸的对应栏内。

【说明】

享元(flyweight)模式主要用于减少创建对象的数量,以低内存占用,提高性能。现要开发一个网络围棋程序允许多个玩家联机下棋。由于只有一台服务器,为节内存空间,采用享元模式实现该程序,得到如图6-1所的类图。

【Java代码】

import java.util.*:

enum PieceColor {BLACK,WHITE}//棋子颜色

class PiecePos{//棋子位置

private intx;

private int y:

pubic PiecePos(int a,int b){x=a;y=b;}

public int getX0{retun x;}

public int getYO{return y;}

}

abstract class Piece{//棋子定义

protected PieceColor m_color;//颜色

protected Piecemopos m_pos;//位置

public Piece(PieceColor,color PiecePos

pos){m color=color;

{:sod=sod u

(1);

}

class BlackPiece extends Piece{

public BlackPiece(PieceColor

color,PiecePos pos){super(color,pos);}

public void drawO{

System out println("draw a black

piece");}

}

class WhitePiece extends Piece{

public WhitePiece(PieceColor

color,PiecePos pos){super(c

olor,pos):}

public void draw0{

System.out.println("draw a white

piece");

}

{

class PieceBoard{

//棋盘上已有的棋子

private static final

ArrayList<(2)>m_arrayPiece=new Arra

yList

private String m_blackName;//黑方名称

private String m_whiteName;//白方名称

public PieceBoard(String black,String

white){

m_blackName=black;m_whiteName=white;

}

//一步棋,在棋盘上放一颗棋子

public void SetePiece(PieceColor

color,PiecePos pos){

(3)piece=null;

if(color==PieceColor.BLACK)(//放黑子

piece=new BlackPiece(color,pos);//获取一颗黑子

System.out.println(m_blackName+"在位置("+pos.getX0)

+","+pos.getYO+")");

(4):

{

else{//放白子

piece=new WhitePiece(color,pos);//获取一颗白子

System.out.println(m whiteName+"在位置("+pos.getX0)+

","+pos.getYO+")");

(5):

}

m_arrayPiece.add(piece);

}

}

信管网参考答案:

(1)public abstract void draw( )

(2)Piece

(3)Piece

(4)piece.draw( )

(5)piece.draw( )

查看解析:www.cnitpm.com/st/459608903.html

目前,2021年下半年软件设计师真题答案已公布,为帮助广大考生考后估分,信管网现已整理发布了真题答案及解析供考生免费查看,点击下方链接即可!

2021年下半年软件设计师上午真题答案(基础知识)

2021年下半年软件设计师下午真题答案(应用技术)

扫码关注公众号

温馨提示:因考试政策、内容不断变化与调整,信管网网站提供的以上信息仅供参考,如有异议,请以权威部门公布的内容为准!

信管网致力于为广大信管从业人员、爱好者、大学生提供专业、高质量的课程和服务,解决其考试证书、技能提升和就业的需求。

信管网软考课程由信管网依托10年专业软考教研倾力打造,官方教材参编作者和资深讲师坐镇,通过深研历年考试出题规律与考试大纲,深挖核心知识与高频考点,为学员考试保驾护航。面授、直播&录播,多种班型灵活学习,满足不同学员考证需求,降低课程学习难度,使学习效果事半功倍。

相关内容

发表评论  查看完整评论  

推荐文章