北航java大作业,北航成人继续教育 本科 计算机科学与技术 JAVA——大作业.doc

文档说明

程序的主体类是Game类,它调用Table类建立游戏桌面,然后创建One,Two,Three,Four,Five,Six,Seven七个方块类。Shape类是各个方块的根类。About类显示作者及相关信息。

操作按键:方向键左、右、下代表方块相应移动方向,方向按键“上”,代表方块的形状转换,空格键暂停。

速度可选为9档,隐藏第十档。初始速度为500,当消去50行后,速度加快一档。当消去450行时,速度升至十档。当消去第500行时,游戏通关。

速度加快一次,主界面内的方块颜色变化一次。

积分:消去一行,加10分,消去2行,加30,消去3行,加60,消去四行,加100分

程序源码

主体类:Game

package russia;

import java.awt.Choice;

import java.awt.Color;

import java.awt.Cursor;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.Label;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.ItemEvent;

import java.awt.event.ItemListener;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import javax.swing.JApplet;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.Timer;

public class Game extends JApplet {//游戏主程序

JPanel panel;

Table gameTable;//桌面类

Shape shape;//方块类

JButton startButton,restartButton;

Label scoreLabel;

Label bestScore;

Label about;

Choice speedChoice;

int speed=500;初始速度

int which;//标志哪一个要下落的方块

int nextWhich;//标志下一个要下落的方块

int score=0;//记录总分数

int row=0;//记录总行数

int mainColor=1;//方块主体颜色

boolean passAll=false;//标志是否通关

boolean isLast=false;//标志是否是最后一级

boolean canMove=false;//标志是否响应键盘

Timer timer;//记时器,用于控制下落时间间隔

StartListener startListener;//开始按钮事件监听器

RestartListener restartListener;//重新开始按钮事件监听器

SpeedChoiceListener speedChoiceListener;//速度监听器

public Game() {

panel=(JPanel)getContentPane();

}

public void init() {初始化各个变量

panel.setLayout(null);//不用布局管理器,以便自己定义位置

about=new Label("关于作者");

scoreLabel=new Label("0");

bestScore=new Label();

startButton=new JButton("开始");

restartButton=new JButton("重玩");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JAVA语言与面向对象程序设计单选题 applet的主要方法 在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成主类实例的初始化工作。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:C applet的主要方法 下面哪个方法与applet的显示无关? A.A、 update() B. B、draw() C. C、repaint() D. D、paint() 答案:B applet主要方法 在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:D applet主要方法 下面哪种方法可以获得一个applet的init() 方法在网页中的宽度? A.a) int width = this.getY() 答案:B applet主要方法 在Java Applet程序用户自定义的Applet子类中,常常重载( ) 方法在Applet的界面中显示文字、图形和其它界面元素。 A.A. start( ) B. B. stop( ) C. C. init( ) D. D. paint( ) 答案:D applet主要方法 下面的applet的init()方法所给出的用户界面是()。    public void init() {      setLayout(new BorderLayout());      add("East", new Button("hello")); } A.a) 在applet的正中出现一个按钮 B.   b) 在applet的左边出现一个按钮 C. c) 在applet的右边出现一个按钮 D. d) 一个按钮充满了整个applet 。 答案:C final类 下面类定义中哪一个定义了一个不允许有子类的类? A.a) class Key { } B.    b) abstract final class Key { } C.    c) class Key {final D.} E.    d) final class Key { } 答案:D final修饰符 以下哪个约束符可用于定义成员常量? A.A、 static B. B、final C. C、abstract D. D、No modifier can be used 答案:B java程序基础 Java Application源程序的主类是指包含有( )方法的类。 A.A、main方法 B. B、toString方法 C. C、init方法 D. D、actionPerfromed方法 答案:A java程序结构 main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( ) A.A、 public static void main() B. B、public static void main(String[ ] args) C. C、 public static int main(String[ ] arg) D.D、public void main(String arg[ ]) 答案:B java程序结构 main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( ) A.A.public static void main() B. B、public static void main(String[ ] args) C. C、 public static int main(String[ ] arg) D.D、public void main(String arg[ ]) 答案:B java基础 Java Applet 源程序文件的扩展名为( )。 A.A. .java B. B. .class C. C. .html D. D. .exe 答案:A 按钮 创建一个标识有"关闭"按钮的语句是: A.A、TextField b = new TextField("关闭") 答案:D 按钮 创建一个标识有"关闭"按钮的语句是( )。 A.A. TextField b = new TextField("关闭") 答案:D 编译 编译Java Applet 源程序文件产生的字节码文件的扩展名为( )。 A.A. .java B. B. .class C. C. .html D. D. .exe 答案:B 编译 编译Java Application 源程序文件将产生相应的字节码文件,这

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值