java的强大功能让这个问题很轻松的被解决
import java.awt.BorderLayout;
import java.awt.Font;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Clock extends JFrame {
private static Thread r;
private static JLabel jTime;
private static JLabel jDate;
public static void main(String[] args) {
Clock timeDemo = new Clock();
}
/* 构造 */
public Clock() {
setSize(280, 180);
setLocation(200, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setTitle("时钟");
setVisible(true);
JPanel panel = new JPanel();
getContentPane().add(panel, BorderLayout.CENTER);
panel.setLayout(null);
jDate = new JLabel();
jDate.setFont(new Font("仿宋", 1, 15));
jDate.setBounds(80, 10, 220, 25);
panel.add(jDate);
jTime = new JLabel();
jTime.setFont(new Font("楷体", 1, 40));
jTime.setBounds(50, 55, 200, 60);
panel.add(jTime);
r= new Thread(new Runnable() {
@Override
public void run() {
while (true) {
jDate.setText(new SimpleDateFormat("yyyy年MM月dd日").format(new Date()));
jTime.setText(new SimpleDateFormat("HH:mm:ss").format(new Date()));
try {
r.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
});
r.start();
}
}