Java编程小实例—数字时钟的实现代码示例

 更新时间:2017年10月24日 14:34:59   作者:java妞妞  
正所谓拳不离手曲不离口,java学习的过程中,练习还是要多一点比较好。接下来分享给大家一个Java编程的小实例,供朋友们参考。

本文的实例是Java编程实现一个数字时钟,代码测试可用,练练手吧。代码如下:

package me.socketthread;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.JFrame;
//数字时钟
public class ClockDemo extends JFrame implements Runnable{
	Thread clock;
	public ClockDemo(){
		super("数字时钟");
		//调用父类构造函数
		setFont(new Font("Times New Roman",Font.BOLD,60));
		//设置时钟的显示字体
		start();
		//开始进程
		setSize(280,100);
		//设置窗口尺寸
		setVisible(true);
		//窗口可视
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		//关闭窗口时退出程序
	}
	public void start(){
		//开始进程
		if (clock==null){
			//如果进程为空值
			clock=new Thread(this);
			//实例化进程
			clock.start();
			//开始进程
		}
	}
	public void run(){
		//运行进程
		while (clock!=null){
			repaint();
			//调用paint方法重绘界面
			try{
				Thread.sleep(1000);
				//线程暂停一秒(1000毫秒)
			}
			catch (InterruptedException ex){
				ex.printStackTrace();
				//输出出错信息
			}
		}
	}
	public void stop(){
		//停止进程
		clock=null;
	}
	public void paint(Graphics g){
		//重载组件的paint方法
		Graphics2D g2=(Graphics2D)g;
		//得到Graphics2D对象
		Calendar now=new GregorianCalendar();
		//实例化日历对象
		String timeInfo="";
		//输出信息
		int hour=now.get(Calendar.HOUR_OF_DAY);
		//得到小时数
		int minute=now.get(Calendar.MINUTE);
		//得到分数
		int second=now.get(Calendar.SECOND);
		//得到秒数
		if (hour<=9)
		timeInfo+="0"+hour+":";
		//格式化输出 else
		timeInfo+=hour+":";
		if (minute<=9)
		timeInfo+="0"+minute+":"; else
		timeInfo+=minute+":";
		if (second<=9)
		timeInfo+="0"+second; else
		timeInfo+=second;
		g.setColor(Color.white);
		//设置当前颜色为白色
		Dimension dim=getSize();
		//得到窗口尺寸
		g.fillRect(0,0,dim.width,dim.height);
		//填充背景色为白色
		g.setColor(Color.orange);
		//设置当前颜色为橙色
		g.drawString(timeInfo,20,80);
		//显示时间字符串
	}
	public static void main(String[] args){
		new ClockDemo();
	}
}

测试结果就不展示了,do more exercise!行动起来!

总结

以上就是本文关于Java编程小实例—数字时钟的实现代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Java编程实现从尾到头打印链表代码实例Java编程获取文本框的内容实例解析Java语言中cas指令的无锁编程实现实例等,有什么问题可以随时留言,欢迎大家交流讨论。感谢朋友们对本站的支持!

相关文章

  • Java spring定时任务详解

    Java spring定时任务详解

    这篇文章主要为大家详细介绍了Spring定时任务,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-10-10
  • 经典再现 基于JAVA平台开发坦克大战游戏

    经典再现 基于JAVA平台开发坦克大战游戏

    经典再现,这篇文章主要介绍了基于JAVA平台开发坦克大战游戏的相关代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Spring Cloud Data Flow初体验以Local模式运行

    Spring Cloud Data Flow初体验以Local模式运行

    这篇文章主要介绍了Spring Cloud Data Flow初体验以Local模式运行,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • springboot整合H2内存数据库实现单元测试与数据库无关性

    springboot整合H2内存数据库实现单元测试与数据库无关性

    本篇文章主要介绍了springboot整合H2内存数据库实现单元测试与数据库无关性,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • java实现监控rtsp流转flv方法实例(前端播放,前后端代码都有)

    java实现监控rtsp流转flv方法实例(前端播放,前后端代码都有)

    这篇文章主要给大家介绍了关于java实现监控rtsp流转flv的相关资料,文中介绍的是前端播放,前后端代码都有,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • Mybatis-Plus分页的使用与注意事项

    Mybatis-Plus分页的使用与注意事项

    分页查询每个人程序猿几乎都使用过,下面这篇文章主要给大家介绍了关于Mybatis-Plus分页的使用与注意事项的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Spring Cloud Zuul自定义过滤器的实现

    Spring Cloud Zuul自定义过滤器的实现

    这篇文章主要介绍了自定义Spring Cloud Zuul过滤器的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 从java源码分析线程池(池化技术)的实现原理

    从java源码分析线程池(池化技术)的实现原理

    这篇文章主要介绍了从java源码分析线程池(池化技术)的实现原理,池化技术是一种编程技巧,当程序出现高并发时,能够明显的优化程序,降低系统频繁创建销毁连接等额外开销,下文更多的相关介绍需要的小伙伴可以参考一下
    2022-04-04
  • Mybatis批量插入,返回主键ID不成功,巨坑记录

    Mybatis批量插入,返回主键ID不成功,巨坑记录

    这篇文章主要介绍了Mybatis批量插入,返回主键ID不成功,巨坑记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • 详解Java Slipped Conditions

    详解Java Slipped Conditions

    这篇文章主要介绍了Java Slipped Conditions的相关资料,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2021-01-01

最新评论