java圣诞树的编程代码
时间: 2023-11-20 07:54:30 浏览: 507
下面是一个简单的Java圣诞树程序的例子:
```java
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class ChristmasTree extends JPanel {
private static final long serialVersionUID = 1L;
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
int x = getWidth() / 2;
int y = getHeight() / 2;
drawTree(g2d, x, y, 100, Color.GREEN);
drawTree(g2d, x, y, 70, Color.RED);
drawTree(g2d, x, y, 40, Color.YELLOW);
}
private void drawTree(Graphics2D g, int x, int y, int size, Color color) {
g.setColor(color);
g.fillRect(x - size / 2, y - size, size, size);
g.setColor(Color.GREEN);
int[] xPoints = { x - size / 2 - size / 5, x + size / 2 + size / 5, x };
int[] yPoints = { y - size / 5, y - size / 5, y - size - size / 5 };
g.fillPolygon(xPoints, yPoints, 3);
}
public static void main(String[] args) {
JFrame frame = new JFrame("Christmas Tree");
frame.add(new ChristmasTree());
frame.setSize(400, 400);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
```
这个程序使用了Java的Graphics2D类来绘制圣诞树。它创建了一个继承自JPanel的类,重写了paint方法,在其中使用Graphics2D对象绘制了三个不同大小和颜色的圣诞树。每个圣诞树都是一个矩形和一个三角形的组合。最后,它创建了一个JFrame对象,将这个自定义的JPanel添加到其中,并设置了窗口的大小和关闭操作。
阅读全文