时钟

来源:互联网 发布:窗帘拼布算法 编辑:程序博客网 时间:2024/05/23 14:07

时钟

package hong;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.lang.*;import java.util.*;        public class RunnableTest extends JFrame implements Runnable {     //创建类 RunnableTest继承于类JFrame,并实现 Runnable接口。            JPanel pnMain;           //定义变量。            JLabel lblTime;            Thread thdTime;            Date dateDiplay;            GregorianCalendar gCalendar;            String sDate,sTime;            private JPanel pnlMain;            public RunnableTest(){            super("Runable接口线程演示");       //定义界面标题。            pnlMain=new JPanel();           //定义容器、标签和字体。            lblTime=(JLabel) new JLabel("");            Font ft=new Font("宋体",Font.BOLD,15);            setContentPane(pnlMain);         //将组件进行界面布局。            pnlMain.setLayout(null);            pnlMain.add ((Component) lblTime);            lblTime.setBounds(45,49,350,45);            ((Container) lblTime).setFont(ft);            thdTime=new Thread(this);        //定义线程,并启动线程。            thdTime.start();            setSize(400,150);            setVisible(true);            }            public void run(){       //重写方法run(),在方法run()中调用方法displayTime()实现系统日期和时间的显示。                while(thdTime!=null)                {                    displayTime();                }            } public void displayTime(){               Date dateDisplay = new Date();               gCalendar=new GregorianCalendar();      //定义标准日历类GregorianCalendar的对象。               gCalendar.setTime(dateDisplay);               sDate="日期:"+gCalendar.get(Calendar.YEAR)+"年"+(gCalendar.get(Calendar.MONTH)+1)+"月"+gCalendar.get(Calendar.DATE)+"日";   //获得系统当前日期和时间。               sTime="时间:"+gCalendar.get(Calendar.HOUR)+":"+gCalendar.get(Calendar.MINUTE)+":"+gCalendar.get(Calendar.SECOND);               lblTime.setText(sDate+","+sTime);   //在界面中显示日期和时间。            }            public static void main(String[] args) {                // TODO 自动生成的方法存根                RunnableTest rd=new RunnableTest();            }    }

运行结果:
这里写图片描述

知识点分析
1)线程的概念:
线程的概念来源于计算机操作系统中进程的概念。
2)类Thread和Runnable接口:
多线程是指在一个程序中可以同时运行多个线程。
3)创建线程:
线程可以通过继承类Thread或者实现Runnable接口,并重写方法run()实现。