Java Thread类实现时间打印

需积分: 6 0 下载量 47 浏览量 更新于2024-08-26 收藏 672B TXT 举报
"线程类获取时间的示例代码" 在Java编程中,`Thread`类是多线程编程的核心组件,它允许程序同时执行多个独立的流程。在给定的代码示例中,我们看到一个名为`H13Thread`的类继承自`Thread`类,用于展示如何在Java中创建并运行一个新的线程,以及如何在该线程中获取和打印当前时间。 首先,让我们深入了解`Thread`类。`java.lang.Thread`是所有线程的基类,它提供了控制线程执行、同步和通信的方法。当创建一个新线程时,通常有两种方式:一是通过继承`Thread`类,二是实现`Runnable`接口。在这个例子中,选择了第一种方式,即创建了一个新的子类`H13Thread`。 在`H13Thread`类中,覆盖了`Thread`类的`run()`方法,这是线程执行的主要逻辑所在。`run()`方法中的代码将在新线程中运行,而不是主线程。在这个例子中,`run()`方法包含一个循环,该循环会休眠1秒(`Thread.sleep(1000)`),然后使用`SimpleDateFormat`和`Date`类格式化并打印当前时间。 `SimpleDateFormat`是`java.text.SimpleDateFormat`类,用于格式化日期和时间。在这里,它被用来创建一个对象`sdf`,并设置了日期时间格式为"yyyy-MM-dd HH:mm:ss",这将输出如"2022-04-07 15:30:45"这样的格式。`Date`类代表一个具体的瞬间,精确到毫秒。`new Date()`实例化一个`Date`对象,表示当前系统时间,然后通过`format()`方法将`Date`对象转换为字符串,按照`SimpleDateFormat`指定的格式输出。 代码的主函数`main`启动了`H13Thread`线程。通过调用`start()`方法,线程开始执行其`run()`方法。值得注意的是,`start()`方法会调用`run()`,但与直接调用`run()`不同,`start()`会在线程上下文中执行,从而实现了并发执行。 总结一下,这个示例主要展示了以下几个关键知识点: 1. Java中的线程创建:通过继承`Thread`类并重写`run()`方法。 2. `Thread.sleep(long milliseconds)`:使当前线程暂停执行指定的毫秒数。 3. `SimpleDateFormat`:日期和时间的格式化工具,用于将日期转换为易读的字符串。 4. `Date`:表示特定时间点的类,常用于获取和处理当前时间。 5. `Thread.start()`:启动线程,执行`run()`方法,实现并发执行。 这些知识点对于理解Java中的多线程编程和时间处理至关重要。通过这个简单的例子,开发者可以学习如何在实际项目中创建和管理线程,以及如何在不同的线程中进行时间操作。