From da7fc0b046b218a04f14fb5946babefd865e5424 Mon Sep 17 00:00:00 2001 From: Luke Date: Tue, 22 Jul 2025 22:33:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=92=8C=E8=B0=83=E8=AF=95=E8=BE=93=E5=87=BA?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 SnowConfig 类,用于统一设置程序运行模式 - 提供调试模式下的日志输出方法 - 支持判断当前运行模式 --- .../java/org/jcnc/snow/common/SnowConfig.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 src/main/java/org/jcnc/snow/common/SnowConfig.java diff --git a/src/main/java/org/jcnc/snow/common/SnowConfig.java b/src/main/java/org/jcnc/snow/common/SnowConfig.java new file mode 100644 index 0000000..e48108e --- /dev/null +++ b/src/main/java/org/jcnc/snow/common/SnowConfig.java @@ -0,0 +1,58 @@ +package org.jcnc.snow.common; + +/** + * 全局编译/运行配置和调试输出工具类。 + *

+ * 用于统一设置程序的运行模式,并在调试模式下输出日志信息。 + *

+ */ +public final class SnowConfig { + + /** + * 当前运行模式,默认为 {@link Mode#RUN}。 + */ + public static Mode MODE = Mode.RUN; + + /** + * 私有构造方法,防止实例化。 + */ + private SnowConfig() { + } + + /** + * 仅在 {@link Mode#DEBUG} 模式下打印一行信息。 + * + * @param msg 要输出的信息 + */ + public static void print(String msg) { + if (MODE == Mode.DEBUG) System.out.println(msg); + } + + /** + * 仅在 {@link Mode#DEBUG} 模式下按格式输出信息。 + * + * @param fmt 格式化字符串 + * @param args 格式化参数 + */ + public static void print(String fmt, Object... args) { + if (MODE == Mode.DEBUG) System.out.printf(fmt, args); + } + + /** + * 判断当前是否为 {@link Mode#DEBUG} 模式。 + * + * @return 当且仅当当前为调试模式时返回 true + */ + public static boolean isDebug() { + return MODE == Mode.DEBUG; + } + + /** + * 判断当前是否为 {@link Mode#RUN} 模式。 + * + * @return 当且仅当当前为运行模式时返回 true + */ + public static boolean isRun() { + return MODE == Mode.RUN; + } +}