Java 绘制多个移动图形

Java 绘制多个移动图形,java,swing,graphics,java-2d,Java,Swing,Graphics,Java 2d,我已经使这个程序能够使用这两个类绘制一个小球在屏幕上弹跳的实例 import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.geom.Ellipse2D; import javax.swing.JPanel; import javax.swing.Timer; publ

我已经使这个程序能够使用这两个类绘制一个小球在屏幕上弹跳的实例

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.Ellipse2D;

import javax.swing.JPanel;
import javax.swing.Timer;

public class move extends JPanel implements ActionListener
{
    Timer t = new Timer(7, this);
    int x = 10, y = 10, velX = 7, velY = 7;

    public void paintComponent(Graphics g, Graphics h)
    {
        super.paintComponent(h);
        super.paintComponent(g);
        System.out.println(g);
        Graphics2D g2 = (Graphics2D) g;
        Ellipse2D circle = new Ellipse2D.Double(x, y, 40, 40);
        g2.fill(circle);
        t.start();
    }

    public void actionPerformed(ActionEvent e) {
        if(x<0 || x > getWidth())
        {
            velX = -velX;
        }
        if(y < 0 || y > getHeight())
        {
            velY = -velY;
        }
        x += velX;
        y += velY;
        repaint();
    }   
}
下一个类只是把它放在一个JFrame中,我知道这是非常简单的东西,但我只是尝试在同一个JFrame中绘制多个实例。我只是试着用我的代码知识来做实验,一些要实现的代码示例会很好


如何绘制多个移动图形?

此代码可以有一个类
类,该类知道球的位置和大小,以及如何将自身绘制为
图形


创建每个球时,它们将添加到列表中。绘制时,迭代列表并绘制每个

公共无效绘制组件(图形g、图形h)
和。。什么叫那个密码?毫无疑问,你会喜欢通过@trashgood.+1 GagandeepBali找到的@user1808763在这里还可以看到一些游戏逻辑的示例:例如,请查看
import java.awt.Color;
import javax.swing.JFrame;

public class Gui {

    public static void main(String[] args)
    {
        move s = new move();
        JFrame f = new JFrame("move");
        f.add(s);
        f.setVisible(true);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setSize(1000, 1000);
        f.setTitle("Moving Circle");
        f.setBackground(Color.GREEN);
    }
}