这个中秋,我用 Java 画了一个月饼!
栈长代表微信公众号 "Java技术栈" 祝所有粉丝中秋佳节快乐!
为了用一种特殊的方式表达我的心意,去年中秋节,我写了这篇文章:
没错,去年一天,我学了 20 种编程语言,刺激。。
看过这篇文章的在下面留个言,是时候露个脸了,你已经是微信公众号 "Java技术栈" 的铁粉了,感谢一直关注,感谢有你~
今年中秋节,我又想写点不一样的来给大家祝福,用 Java 来画一个月饼,听起来是不是很好玩?
思路来了,就研究下怎么画这个月饼,就画一个简单的圆输出几个字好了,点到为止,团团圆圆,中秋美满,哈哈。
不废话,直接上代码。
import javax.swing.*;
import java.awt.*;
/**
* @from 微信公众号:Java技术栈
* @author 栈长
*/
public class ZhongQiuHappy extends JPanel {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setTitle("2019年中秋佳节快乐");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setAlwaysOnTop(true);
frame.setBackground(Color.white);
frame.setSize(400, 400);
ZhongQiuHappy happy = new ZhongQiuHappy();
frame.add(happy);
frame.setVisible(true);
}
@Override
public void paintComponent(Graphics graphics) {
graphics.drawOval(30, 30, 300, 300);
graphics.drawString("^ _ ^", 175, 155);
graphics.drawString("我是一个简单好吃的的月饼!", 110, 175);
}
}
运行 main 方法,来看下效果:
"我是一个简单好吃的的月饼!",有兴趣的可以试一下。
这个简单的月饼用了 Java AWT、SWING 库编程,老 Java 程序员都知道图形化编程不是 Java 的强项,说实话能画出这个,对我来说已经很不容易了。
这种编程或许很多年轻的程序员朋友没有见过,可能会问:Java居然还能画图?
是的,Java不仅能画图,而且画的真特么巨丑,听过或者用过这个技术的人或许都已经是老程序员了,记得在我学 Java 的时候这东西就已经被淘汰了。
那时候我实习什么的,老师带大家用的都是 C 语言画图编程,如用 C 语言实现泡泡堂就是很经典的案例。
玩过泡泡堂的人,相信粉丝里面也不多了吧,那时候我去网吧就是玩泡泡堂,别的什么的都没兴趣,感觉我又暴露年纪了,说多了都是泪。。
好了,到这了,其他我也不会什么了,明年我再来点不一样的,很好奇,不知道我会写出什么扎眼球的,持续关注哦。
中秋快乐,明年,等我~
这个中秋,我用 Java 画了一个月饼!的更多相关文章
- Java 从零开始实现一个画图板、以及图像处理功能,代码可复现
Java 从零开始实现一个画图板.以及图像处理功能,代码可复现 这是一个学习分享博客,带你从零开始实现一个画图板.图像处理的小项目,为了降低阅读难度,本博客将画图板的一步步迭代优化过程展示给读者,篇幅 ...
- 用Java语言编写一个简易画板
讲了三篇概博客的概念,今天,我们来一点实际的东西.我们来探讨一下如何用Java语言,编写一块简易的画图板. 一.需求分析 无论我们使用什么语言,去编写一个什么样的项目,我们的第一步,总是去分析这个项目 ...
- 很值得学习的java 画图板源码
很值得学习的java 画图板源码下载地址:http://download.csdn.net/source/2371150 package minidrawpad; import java.awt.*; ...
- Python——用turtle画一个月饼
今天是中秋节,首先在这里祝大家中秋快乐!那么提到中秋,我们首先想到的当然是香甜的月饼,所以我今天就在这里画一个月饼送给大家. 那么 要用Python画图,我们必须掌握并运用Turtle库,这个可以自己 ...
- 【编程漫谈】用JAVA画多边形
一门语言只要带图形库就可以编程画图了,用JAVA画图有两种方式,一是在内存中画好然后生成图片,就可以看到画图的效果了.另一个就是在窗口界面上直接画,可以实时看到程序的运行效果.刚开始学编程的时候,我加 ...
- 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)
使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网) 一,前期准备 1,Java IDE(Eclipse)与JDK的安装与配置jdk-15.0.1-免配置路径版提取码:earu免安装版 ...
- 如何在JAVA中实现一个固定最大size的hashMap
如何在JAVA中实现一个固定最大size的hashMap 利用LinkedHashMap的removeEldestEntry方法,重载此方法使得这个map可以增长到最大size,之后每插入一条新的记录 ...
- 利用java实现的一个发送手机短信的小例子
今天闲来无事,在微博上看到一个关于用java实现的一个发送手机短信的程序,看了看,写的不太相信,闲的没事,把他整理下来,以后可能用得着 JAVA发送手机短信,流传有几种方法:(1)使用webservi ...
- 【风马一族_Java】使用java,画出任意大小的菱形
public class rhombic { public static void main(String[] args){ /** * scriber()画菱形的方法,参数 9 是指菱形的对角线的长 ...
随机推荐
- node.js中使用路由方法
1.数组的find方法还是不会用,改为filter 2.正规表达式还是理解的不好 //var myrouter = require("./myrouter"); //myroute ...
- 巧记 In/hasOwnProperty/for…in/for…of/forEach区别
写在前面 上面提到的这些东西,反复的记忆,反复的忘记.现分享一种巧记方法,有需要,请参考,希望你也过目不忘. 仅提供巧记思路.仅提供巧记思路.仅提供巧记思路. 1. in 用于判断属性是否在对象上(包 ...
- windows mysql服务器
安装完mysql服务器后,需要启动服务器, 才可提供数据库存储服务.windows上如何启动和关闭mysql服务器呢? 1. 启动 进入mysql的安装目录,如D:\Program Files\mys ...
- Android 创建工程
安卓系统占有率 创建 Application name:程序的名称,一般会出现在应用程序的标题栏 Project name:一个项目的名称,实际对应一个文件夹 Pakcage name:此名理论上可以 ...
- Java面试通关要点 汇总集【最终版】
本文转载自公众号:服务端思维,阅读大约需要7分钟.梁兄的知识储备很丰富,组织的知识星球里也是干货十足,平常还会有技术研习等活动,欢迎关注. 首先,声明下,以下知识点并非阿里的面试题.这里,笔者结合自己 ...
- 关于ThinkPHP5.1+的Log无法记录SQL调试记录的小经历
项目开发阶段,除了基本编码外,性能也需要实时关注与优化.之前我的大部分项目都是使用ThinkPHP5.0以及ThinkPHP3.2,对于框架提供的日志记录和日志配置都差不多,然后使用ThinkPHP5 ...
- linux shell的输出效果
在linux系统命令行界面默认目录颜色是蓝色,在黑色底色上无法看清 原来效果图: 最终效果图: 大致步骤:1.复制配置文件到个人用户的根目录下2.修改配置文件中字体颜色的设置3.重新启动窗口,输入ls ...
- jQuery遍历之find()
/**案例说明: *首先理清楚find()函数同children()函数之间的区别 * 1. find()会遍历给定节点下的所有的元素节点. * 2. children()之后遍历给定节点下的单一层级 ...
- linux磁盘空间满了 但是没有大文件
很常见的一个问题 linux磁盘空间满了 但是没有大文件 解决思路: 1.用df 检查发现/根目录可用空间为0 [root@/]#df -h 2.用du检查发现各目录占用的空间都很少,有约3G的空间莫 ...
- 浅谈原子操作、volatile、CPU执行顺序
浅谈原子操作.volatile.CPU执行顺序 在计算机发展的鸿蒙年代,程序都是顺序执行,编译器也只是简单地翻译指令,随着硬件和软件的飞速增长,原来的工具和硬件渐渐地力不从心,也逐渐涌现出各路大神在原 ...