一个简单的粽子类示例,其中绘制了一个绿色的糯米粽,内部馅料为红豆:
import java.awt.Color;
import java.awt.Graphics;
public class Zongzi {
private int size; // 粽子大小,单位是像素
private Color color; // 粽子颜色
private String stuffing; // 粽子馅料
public Zongzi(int size, Color color, String stuffing) {
this.size = size;
this.color = color;
this.stuffing = stuffing;
}
public void draw(Graphics g, int x, int y) {
g.setColor(color);
g.fillPolygon(new int[] { x, x + size / 2, x + size, x + size / 2 },
new int[] { y + size / 4, y, y + size / 4, y + size / 2 },
4);
g.setColor(Color.RED);
g.fillOval(x + size / 4, y + size / 4, size / 2, size / 2);
}
}
在上面的代码中,构造函数中传入了粽子的大小、颜色和馅料信息,而draw
方法接收一个Graphics
对象和坐标参数,用于绘制粽子。
在draw
方法中,首先设置颜色,接着用fillPolygon
函数来矢量绘制一个四边形代表粽子,然后用fillOval
来绘制馅料,实现了一个简单的粽子绘制逻辑。
使用该类可以在Java中创建一个粽子的实例并绘制出来:
Copy
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class ZongziDemo {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel() {
public void paintComponent(Graphics g) {
super.paintComponent(g);
Zongzi zongzi = new Zongzi(80, Color.GREEN, "红豆");
zongzi.draw(g, 60, 50);
}
};
frame.add(panel);
frame.setVisible(true);
}
}
运行这个程序将在窗口里绘制一个糯米粽的图形。