超类不使用子类方法

时间:2019-06-20 04:15:27

标签: java subclass superclass

我的超类无法使用我在子类中创建的方法。我收到错误,因为我正在使用Graphics参数。我在这里想念什么?

我尝试了eclipse给出的建议,但是它们会导致更多错误。

这是我的超级班

  import java.awt.Canvas;
  import java.awt.Color;
  import java.awt.Graphics;
  import javax.swing.JFrame;
public class GameScreen extends Canvas{

public GameScreen() {

}

public static void main(String[] args) {
    // TODO Auto-generated method stub
//Sets Screen
    JFrame jframe = new JFrame("Game Screen");
    Canvas canvas = new GameScreen();
        jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        canvas.setBackground(Color.cyan);
        canvas.setSize(1000,800);
        jframe.add(canvas);
        jframe.pack();
        jframe.setVisible(true);

        Paddle1.paint(Graphics g);

}



 }

这是我的子类

    import java.awt.Color;
    import java.awt.Graphics;
public class Paddle1 extends GameScreen {

public void paint(Graphics g) {
    g.setColor(Color.white);
    g.fillRect(50, 50, 40, 130);
}
 }

子类创建一个应该显示在画布顶部的矩形

1 个答案:

答案 0 :(得分:-1)

如果您想触发Paddle1的方法“绘画”,则必须如下修改代码:

JFrame jframe = new JFrame("Game Screen");
Canvas canvas = new Paddle1();
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
canvas.setBackground(Color.cyan);
canvas.setSize(1000,800);
jframe.add(canvas);
jframe.pack();
jframe.setVisible(true);
canvas.paint(g);
相关问题