学习Java过程中,在树上遇到的一个例子,我将这个例子“进化”了。具体向下看:
编写工具:EditPlus
JDK版本: 1.7.0_60-b19
要求:输出 300 颗位置随机的星星
效果如下:
我认为花星星并不需要太过于复杂的绘制
大婶们,见了别笑小弟自恋哦~~~~
思路:
1 . 创建一个 1024 x 768 的窗口
2 . 将画布添加到窗口上 (在窗口的重绘方法中花 300 颗星星)
3 . 显示窗口
1 import java.awt.*; //导入包涵窗口的类 2 3 public class ColorfullStar //主类 4 { 5 public static void main(String args[]) //主函数 6 { 7 /*引用Frame对象*/ 8 Frame w = new Frame("+-----------漫天星星-------------+"); 9 10 /*设置窗口属性*/ 11 w.setSize(1024, 768); 12 w.setBackground(Color.BLACK); 13 14 /*引用MyPanel对象*/ 15 MyPanel mp = new MyPanel(); 16 17 /*将画布(MyPanel对象的引用)加入窗口*/ 18 w.add(mp); 19 20 /*显示窗口*/ 21 w.show(); 22 } 23 } 24 25 26 class MyPanel extends Panel //继承Panel 27 { 28 public void paint(Graphics g) //重绘方法 29 { 30 double a, b, c; //用来装随机数的容器 31 32 for (int i = 0; i < 300; ++i) //将会输出300课星星 33 { 34 /*为变量获得随机数*/ 35 a = Math.random(); 36 b = Math.random(); 37 c = Math.random(); 38 39 /*随机设置颜色、字体,输出星星*/ 40 g.setColor(new Color((int)(a * 255), (int)(b * 255), (int)(c * 255))); //设置星星颜色 41 g.setFont(new Font("Consolas", /*(int)(a * 4) 随机字体样式*/ Font.PLAIN, (int)(c * 32))); //设置字体属性(星星的样式) 42 g.drawString("*", (int)(a * 1024), (int)(b * 768)); //输出星星 43 } 44 } 45 }
大哥我今天第一次发表文章,心里素质不怎么好,还需要多多磨练,各位要支持哦~~~
大伙有空记得来踩我的QQ空间哦
http://user.qzone.qq.com/865741184
微博的访问量就靠你们了
http://t.qq.com/binlikeyou100