在Java中實現畫滿天星和月亮,需要使用Java圖形界面中的繪圖類(Graphics)。以下是一個簡單的示例程序:
import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; public class DrawMoonAndStars extends JFrame { public DrawMoonAndStars() { setTitle("畫滿天星和月亮"); setSize(800, 600); setVisible(true); } public void paint(Graphics g) { // 畫背景 g.setColor(Color.BLACK); g.fillRect(0, 0, getWidth(), getHeight()); // 畫月亮 g.setColor(Color.WHITE); g.fillOval(150, 100, 150, 150); // 畫星星 g.setColor(Color.YELLOW); for (int i = 0; i< 100; i++) { int x = (int)(Math.random() * getWidth()); int y = (int)(Math.random() * getHeight()); g.fillOval(x, y, 5, 5); } } public static void main(String[] args) { new DrawMoonAndStars(); } }
在這個程序中,我們首先創建了一個繼承自JFrame的類DrawMoonAndStars,用于顯示我們的繪圖窗口。在構造函數中,我們設置了窗口標題和大小,并將其可見。接下來,我們重寫了paint方法,在其中進行繪圖操作。
首先,我們用g.setColor(Color.BLACK)來設置畫筆顏色為黑色,并用g.fillRect(0, 0, getWidth(), getHeight())來畫出整個窗口的背景。
然后,我們用g.setColor(Color.WHITE)來設置畫筆顏色為白色,并用g.fillOval(150, 100, 150, 150)畫出月亮。注意,這里我們使用fillOval方法來畫出橢圓形的月亮。
最后,我們用g.setColor(Color.YELLOW)來設置畫筆顏色為黃色,并使用一個for循環來畫出100個隨機位置的星星,每個星星的大小為5x5。
最后,在main方法中,我們創建了一個DrawMoonAndStars對象來顯示繪圖窗口。