本文实例为大家分享了Java实现简易俄罗斯方块的具体代码,供大家参考,具体内容如下
一、将对象抽象为类
首先考虑俄罗斯方块游戏中含有哪些具体的对象,对象中含有哪些具体属性和方法,然后用代码来实现。
建立如下类:
Cell类:代表最小的方格单位,构成7种图形的最基本图形。
含有row(行号),col(列号),image(对应的图片)属性,
含有left(左移),right(右移),drop(下落)方法。
Tetromino类:代表由4个最小方格构成的7种图形的合集。
含有cells(四个方块)属性,
含有moveLeft(四格方块向左移动),moveRight(四格方块向右移动),softDrop(软下落),randomOne(随机生成一个四格方格)方法。
T类继承于Tetromino类:
I类继承于Tetromino类:
L类继承于Tetromino类:
S类继承于Tetromino类:
Z类继承于Tetromino类:
O类继承于Tetromino类:
J类继承于Tetromino类:
Tetris类:俄罗斯方块的主方法类,包括了游戏运行过程中所需要的众多方法。
含有currentOne(正在下落的四格方块),nextOne(即将下落的四格方块),Cell[][]wall(二维数组的表格,代表墙)属性。
二、类的实现
Notes:各类实现过程中要符合Javabean规范。
Cell类:
package com.tetris;
import java.awt.image.BufferedImage;
/*
* 俄罗斯方块中的最小单位:方格
* 特征(属性):
* row–行号
* col–列号
* image–对应的图片
*
* 行为(方法)
* left();
* right();
* drop();
*/
public class Cell {
private int row; //行
private int col; //列
private BufferedImage image;
public Cell(int row, int col, BufferedImage image) {
super();
this.row = row;
this.col = col;
this.image = image;
}
public Cell() {
super();
// TODO Auto-generated constructor stub
}
public int getRow() {
return row;
}
public void setRow(int row) {
this.row = row;
}
public int getCol() {
return col;
}
public void setCol(int col) {
this.col = col;
}
public BufferedImage getImage() {
return image;
}
public void setImage(BufferedImage image) {
this.image = image;
}
@Override
public String toString() {
return “(” + row + “, ” + col + “)”;
}
//向左移动
public void left(){
col–;
}
//向右移动
public void right(){
col++;
}
//向下移动
public void drop(){
row++;
}
}
今天的文章java 俄罗斯方块简易_Java实现简易俄罗斯方块分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/26016.html