代码思路:
重写JPanel类中的paint()画笔方法,用静态随机函数Math.random()布满星星在画布上
代码实现:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Paint;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class ManTianXing {
public static void main(String[] args) {
JFrame jf = new JFrame("满天星");
//设置画布的尺寸,根据自己的电脑的分辨率进行调解
jf.setSize(1440,900);
//实例化创建的MyPanel对象
MyPanel str = new MyPanel();
str.setBackground(Color.BLACK);
jf.add(str);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class MyPanel extends JPanel{
//通过MyPanl继承重写JPanel方法
public void paint(Graphics g) {
super.paint(g);
//设置星星为白色的,颜色可以自定义
g.setColor(Color.WHITE);
//通过循环将输出300颗星星
for (int i = 0; i < 300; i++) {
//此处需要用到Math.random()静态随机函数,还必须转换为整形的数字
g.drawString("*", (int)(Math.random()*1440) , (int)(Math.random()*900));
}
}
}