Java 滑鼠器坏了

Java 滑鼠器坏了,java,Java,我现在正在学习模板方法和授权。我不明白newClass的接口继承是什么,然后newClass通过其内部方法传递给NextClass 当我运行它时,鼠标线器不工作 你能教我怎么修改密码吗? 谢谢大家! public class KiteComponent extends JComponent{ private ArrayList<Kite> kites; private Point mousePoint; public KiteComponent() { kites = new

我现在正在学习模板方法和授权。我不明白newClass的接口继承是什么,然后newClass通过其内部方法传递给NextClass

当我运行它时,鼠标线器不工作

你能教我怎么修改密码吗? 谢谢大家!

public class KiteComponent extends JComponent{
private ArrayList<Kite> kites;
private Point mousePoint;
public KiteComponent() {
    kites = new ArrayList<Kite>();
    ColoredCompoundShape c = new ColoredCompoundShape();

    addMouseListener(new MouseAdapter(){
       public void mouseClicked(MouseEvent e)
       {
           mousePoint = e.getLocationOnScreen();
           for (Kite s: kites){
               if (s.contains(mousePoint))
               s.setColor(s.getColor());}
           repaint();
       } 
    });
}

public void add(Kite k){ kites.add(k);repaint();}

public void paintComponent (Graphics g){
    super.paintComponent(g);
    Graphics2D g2 = (Graphics2D) g;
   for (Kite s : kites){ s.drawInColor(g2); }
} 
}
公共类KiteComponent扩展了JComponent{
私人风筝;
专用点鼠标点;
公共厨房组件(){
风筝=新阵列列表();
ColoredCompoundShape c=新的ColoredCompoundShape();
addMouseListener(新的MouseAdapter(){
公共无效mouseClicked(MouseEvent e)
{
mousePoint=e.getLocationOnScreen();
用于(风筝s:风筝){
如果(s.包含(鼠标点))
s、 setColor(s.getColor());}
重新油漆();
} 
});
}
public void add(Kite k){kites.add(k);repaint();}
公共组件(图形g){
超级组件(g);
图形2d g2=(图形2d)g;
对于(风筝s:kites){s.drawInColor(g2);}
} 
}

这不是没用吗,它设置的颜色已经是原来的颜色了。。。如果您认为它实际上没有被调用,请在mouseClicked方法中打印一行,以检查它是否确实被调用

有什么问题吗?问题是什么?你的程序做什么(或应该做什么)?风筝的初始颜色设置为红色。然后点击它,使其颜色变为蓝色。
s.setColor(s.getColor())