前言
本系列文章带领 Java 初学者学习使用 Java 语言结合 Swing 技术以及设计模式开发一款经典小游戏——坦克大战。通过这个小游戏,你可以学会很多实用的设计模式思想,并且提高你的编码水平。
熟悉Frame
Frame
类是 Java Swing 技术的核心类,它表示一个窗口。然后开发者可以在这个窗口里面画各种图形,添加各种组件。
首先,我们使用 Frame
类来创建一个窗口。我们既然要开发坦克大战游戏,那么不妨把这个游戏窗口命名为 TankFrame
。
TankFrame
声明如下,它继承了 Frame
类。然后我们重写构造方法:
java
代码解读
复制代码
public class TankFrame extends Frame { public TankFrame() throws HeadlessException { setVisible(true); setSize(800, 600); setResizable(false); setTitle("War of Tank"); setLocationRelativeTo(null); addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); } }
简单介绍一下构造方法的代码。setVisible(true);
表示让窗口显示出来,因为默认窗口是隐藏的。setSize
方法表示可以设置窗口的宽高。setResizable
表示是否可以重新拖拽窗口的宽高。这里设置为了 false
,表示不可以重新设置宽高。setTitle
表示设置窗口的标题。setLocationRelativeTo
表示设置窗口的相对位置,相对于 null
表示窗口在屏幕正中间。addWindowListener
表示添加窗口监听器,传入 WindowAdapter
的构造器,重写 windowClosing
方法,这样在点击窗口的叉号时可以退出进程也就是 JVM。
在主方法里面运行一下看看:
整理了这份面试笔记包括了:Java面试、Spring、JVM、MyBatis、Redis、MySQL、并发编程、微服务、Linux、Springboot、SpringCloud、MQ、Kafka 面试专题
需要全套面试笔记【点击此处】即可免费获取
java
代码解读
复制代码
public class FrameDemo { public static void main(String[] args) throws InterruptedException { TankFrame frame = new TankFrame(); } }
一个简单的 Swing 窗口就启动成功了。在下一节,你会了解到窗口的 paint
和 repaint
方法。通过这两个方法,你可以在窗口里面绘制图像。