Java-满天繁星案例(2)
import java.awt.Color;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
//满天繁星案例
public class Run {public static void main(String[] args) throws IOException {//创建一个窗体JFrame f = new JFrame(); //Java中定义好的//设置窗体的背景颜色为黑色f.setBackground(Color.BLACK);//往f窗体中放入画纸,画纸用之前要先创建才可以用,画纸就是MyPaperMyPaper mp = new MyPaper(); //自己定义的f.add(mp);//设置窗体可见f.setVisible(true);//设置窗体的大小(自定义大小即可)f.setSize(800, 600);//设置窗体的位置(位置自定义)f.setLocation(450, 200);//设置位置居中f.setLocationRelativeTo(null);//设置关闭窗体的后台f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体的大小不可改变f.setResizable(false);//设置窗体的标题f.setTitle("满天繁星");//设置窗体标题左边的小图标(自己准备图片)f.setIconImage(ImageIO.read(new File("star.jpg")));}}
import java.awt.Color;
import java.awt.Graphics;
import java.util.Random;
import javax.swing.JPanel;
//MyPaper类理解为自己的一张空白的画纸
//extends是继承,MyPaper继承了JPanel,子类是MyPaper,父类是JPanel
//#编程思想
public class MyPaper extends JPanel{//继承之后,可以把带画笔的绘画的功能paint继承过来,画我们自己的东西//Alt+/ 自动补全/自动提示的快捷键 例如:main,syso//paint 表示绘画;Graphics g表示绘画用的画笔
// @Override
// public void paint(Graphics g) {//
// super.paint(g);
//
// }//在该方法中画自己的东西public void paint(Graphics g) {//修改画笔的颜色--为白色g.setColor(Color.WHITE);//使用画笔画一个圆--月亮//fill rectangle 填充矩形 .fillRect()//fill oval 填充圆形 .fillOval()
// g.fillRect(50, 50, 100, 100); //在50,50的位置画一个100,100大小正方形g.fillOval(50, 50, 100, 100); //在50,50的位置画一个100,100大小的圆//需改画笔的颜色--为黑色g.setColor(Color.BLACK);g.fillOval(30, 30, 100, 100); //覆盖,做弯月亮//修改画笔的颜色--为白色g.setColor(Color.WHITE);//创建Random随机数类Random r = new Random();// g.drawString("*", 200, 100); 一颗一颗的画 ×//使用循环画1000颗星星for (int i = 0; i < 1000; i++) {//设置成五颜六色的星星
// g.setColor(new Color(r.nextInt(255), r.nextInt(255), r.nextInt(255)));//使用画笔g先画一颗星星 * //画笔默认初始颜色是黑色//参数1:画谁;参数2和3:所画内容的坐标位置 //注:别超出了定义的窗体的大小g.drawString("*", r.nextInt(800), r.nextInt(600)); //在坐标为300,200的位置画一颗 *}}}
g.fillOval(x, y, w, h);
画图解释:
Java-满天繁星案例(2)相关推荐
- 代码检查规则:Java语言案例详解
本节课程为<代码检查规则:Java语言案例详解>, 通常情况下Java的代码检查规则可以分为以下十类: 接下来,让我们具体来看看每个分类的内容. 一.源文件规范 该类规范主要从文件名.文件 ...
- java进阶案例下载_java进阶案例
java进阶案例: 数据类型,字符,数值,范围,布尔 :byte -128~127. 面向对象:protect :重载与构造 (一). this封装:static:继承:多态: 1.方法覆盖:supe ...
- Java继承概述以及Java继承案例和继承的好处
Java继承概述 1.多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些相同属性和行为,只要继承那个类即可. 2.在Java中通过extends关键字可以实现类与类的 ...
- 复制java文件 案例
复制java文件 案例 方法 一次读写一个字符数据 方法 一次读写一个字符数组
- 基于《悉尼协议》框架下Java课程案例教学研究
文章目录 基于<悉尼协议>框架下Java课程案例教学研究 一.Java课程教学存在问题 (一)Java课程目标定位不足 (二)Java课程教学存在的问题 1. 教材内容更新滞后 2. 学习 ...
- java继承的作用_Java继承概述以及Java继承案例和继承的好处
Java继承概述 1.多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些相同属性和行为,只要继承那个类即可. 2.在Java中通过extends关键字可以实现类与类的 ...
- Java练习案例之输入一个字符串统计每个字母出现次数
Java小案例:输入一个字符串,要求统计字符串中每个字符串出现的次数 需求: 结果预览: 思路: 原码: 需求: 键盘录入一个字符串,要求统计字符串中每个字符串出现的次数. 举例:键盘录入" ...
- Java基础案例3-1:基于控制台的购书系统
[案例3-1]基于控制台的购书系统 [案例介绍] 伴随互联网的蓬勃发展,网络购书系统作为电子商务的一种形式,正以其高效.低成本的优势逐步成为新兴的经营模式,人们已经不再满足互联网的用途仅仅局限于信息的 ...
- Java基础案例教程思维导图
Java基础案例教程目录
- JAVA斗地主案例(单列)
JAVA斗地主案例(单列) 一.案例分析 二.代码实现 一.案例分析 准备牌 扑克牌:54张 特殊派:大王,小王 花色:"♥","♠","♣" ...
最新文章
- 菜鸟发现--网站的皮肤 ^_^
- 使用 jQuery Deferred 和 Promise 创建响应式应用程序
- 堆初始化-二叉堆一般用数组来表示。例如,根节点在数组中的位置是0,第n个位置的子节点分别在2n+1和 2n+2-icoding-void init_min_heap(PMinHeap pq, int
- java中使用kotlin_在Kotlin中使用libGDX
- oracle销售服务器吗,oracle 服务器 版本
- Vue动态组件和组件缓存
- poj2109 Power of Cryptography
- 【Python】文件的使用
- xlib/x11:创建一个监测键盘事件的窗口-3-fullscreen-windowed
- 天池学习赛:工业蒸汽量预测2——特征工程
- 2018 10 23
- C#、VB.NET与三菱Q02、QJ71E71、L02、LJ71E71、FX3U、FX5U等通讯的DLL及调用源代码
- 批量调度工具 Taskctl 作业类型的维护管理
- Pdf格式文件怎么修改
- three.js中正交和透视投影相机的应用
- not authorized on test to execute command { $eval: \return 1111\
- 糖豆人终极淘汰赛服务器维护,糖豆人终极淘汰赛常见问题解决方法一览 糖豆人终极淘汰赛常见问题解决方法汇总...
- window10安装kubectl工具及配置config信息
- 微信公众号还适合投资和创业吗?
- Unity鼠标控制3D物体的移动、旋转、缩放