Fastjson 处理非标准日期格式的解决方案
分享 Fastjson 反序列化非标准日期格式的问题,以及通过 @JSONField 注解指定格式的解决方法
支持通配符SSL证书、多域名证书、IP证书。适配ACME接口, 支持Zerossl、Let's Encrypt和Google等渠道。登录已有账号
2026-08-19 07:15:44 Java Swing 游戏开发
用 Java 写小游戏,Swing 是最快出窗口的方案之一。这里说下怎么把窗口尺寸固定成 200x200。
给一段可直接运行的示例,文件名 GameWindow.java:
import javax.swing.JFrame;
public class GameWindow {
public static void main(String[] args) {
JFrame frame = new JFrame("游戏窗口");
frame.setSize(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLocationRelativeTo(null);
}
}
逐行说下也没什么复杂的。 new 一个 JFrame,括号里的字符串就是窗口标题,随便起就行。 setSize 这一行用来设置窗口尺寸,两个参数分别对应宽和高,单位是像素,填 200, 200 就把尺寸定死了。 别忘加 setDefaultCloseOperation,值选 EXIT_ON_CLOSE,不然关了窗口程序还在后台占着进程,很多新手容易漏这个。 setVisible 设为 true 窗口才会真正弹出来,这行一般都放配置的最后。 最后那行 setLocationRelativeTo(null) 是用来居中显示的,属于可选配置,不加也能跑,加上体验好一点。
Java 天生带跨平台属性,Swing 写的窗口在不同操作系统上基本都能正常运行。要稳妥一点的话,有几个地方可以留意。
项目里用到的所有依赖库,尽量都选本身支持跨平台的,别混进平台专属的原生组件。 窗口尺寸虽然定成了 200x200,不同屏幕的分辨率有高有低,适配的时候还是要多测,保证显示不出问题。 输入处理也要兼顾不同平台的差异,逻辑写得通用一些,避免只适配单一设备。
整体都是 Swing 的基础用法,跑通没什么难度,后面往窗口里加游戏渲染和交互逻辑就可以了。
上一篇: Ubuntu 下把向日葵卸载干净
分享 Fastjson 反序列化非标准日期格式的问题,以及通过 @JSONField 注解指定格式的解决方法
线上出现NoClassDefFoundError: Could not initialize class时的排查思路和常见原因
记录用 WireMock 挡服务时,通过 JSON 映射文件和 Java API 做请求头匹配、响应头与响应体配置的两种方式及细节。
记录使用 MinIO Java SDK 生成预签名 URL 的实践,包含下载和上传场景,以及一些容易出错的点。
跑单测突然报 Command line is too long,大多数情况在 Run Configuration 里勾一个选项就完事。这里把原因和几种方案一起记一下。