java工厂模式编写小游戏
来源:互联网 发布:centos mini desktop 编辑:程序博客网 时间:2024/06/11 09:54
本文带你学习java工厂设计模式的简单设计方法。Java工厂设计模式是一个很实用的软件设计方法,为了增加
学习兴趣,我们利用该模式编写一个简单的游戏框架,模拟抛硬币和投骰子的功能。一听说框架,可能很多初学者
会被吓到,放心,本框架只有60+行代码,没有任何难度,绝逼不会难到你!
下面开始教程:
首先创建两个接口,代码如下:
import java.util.*;
interface Game{
public void startGame();
}
interface GameFactory{
Game getGame();
}
然后是接口的实现部分。这部分我们实现的抛硬币的具体实现过程。Random对象产生随机数。
rand对象可以调用方法nextInt(2),随机产生一个0或1的数(模拟硬币正反面)。
如果是1,控制台输出”Up!“(正面),否则输出”Down!“(反面)。
class CoinGame implements Game{
Random rand = new Random();
public void startGame(){
System.out.println("CoinGame Start!");
int i = rand.nextInt(2);
if(i==1)
System.out.println("Up!");
else
System.out.println("Down!");
}
}
CoinGameFactory类是Game的工厂类,所谓工厂,顾名思义就是生产什么东西的。这里我们用它生产对象,只是我们具体化了该工厂,让它为我们
生产Coin对象。
class CoinGameFactory implements GameFactory{
public Game getGame(){
return new CoinGame();
}
}
以上是抛硬币部分的实现,用同样的方法,我们完成投骰子游戏:
class DiceGame implements Game{
Random rand = new Random();
public void startGame(){
System.out.println("DiceGame Start!");
int i = rand.nextInt(6);
switch(i){
case 0:System.out.println(i+1);
break;
case 1:System.out.println(i+1);
break;
case 2:System.out.println(i+1);
break;
case 3:System.out.println(i+1);
break;
case 4:System.out.println(i+1);
break;
case 5:System.out.println(i+1);
break;
default:System.out.println("Error!");
}
}
}
class DiceGameFactory implements GameFactory{
public Game getGame(){
return new DiceGame();
}
}
最后编写游戏的测试方法playGame(GameFactory fact),该方法接受一个GameFactory对象,然后通过该对象得到我们的游戏,并开始游戏。
public class myGame{
public static void playGame(GameFactory fact){
Game game = fact.getGame();
game.startGame();
}
public static void main(String[] args){
playGame(new CoinGameFactory());
playGame(new DiceGameFactory());
}
}
游戏测试的结果如图:
playGame(new CoinGameFactory());
playGame(new DiceGameFactory());
这两行代码体现了我们可以根据需要创建我们想玩的游戏(抛硬币或者投骰子)。
以上就是教程的全部内容,写的比较粗糙,感谢您的宽容!
- java工厂模式编写小游戏
- 如何用java编写小游戏
- 如何用java编写小游戏
- Java编写的五子棋小游戏
- java编写打砖块小游戏
- java使用工厂模式编写计算器(swing界面)
- 用JAVA编写小游戏连连看
- java swing编写俄罗斯方块小游戏源代码下载
- 使用Java代码编写QuickHit小游戏
- java工厂模式-简单工厂,工厂方法,抽象工厂模式
- Java工厂模式之简单工厂模式
- java中的工厂模式(简单工厂模式+工厂方法模式)
- 工厂模式(工厂方法模式,抽象工厂模式) Java
- java的工厂模式
- java工厂模式
- java工厂模式
- java 设计工厂模式
- Java 工厂模式设计
- android开发遇到的神奇bug
- Android 混合app开发之Hybird app(1)
- java冒泡排序
- repo和docker的一些简单理解
- 如何要在Swift工程中调用OC文件 以及 如何调用某个类的方法
- java工厂模式编写小游戏
- Redis缓存命令整理—Hash(哈希表)操作命令
- 小鸦
- JavaEE学习笔记--JavaScript(2)
- [LeetCode]110. Balanced Binary Tree
- 使用VirtualBox和Vagrant搭建Linux开发环境
- 100道前端面试题02
- 2017年4月28日工作日记
- Extjs GridPanel用法详解