Java: реализация нарисованного класса - PullRequest
1 голос
/ 10 февраля 2010

Я пытаюсь сделать игру-лабиринт на Java.

Класс Explorer представляет пользователя, а DrawableExplorer - это код, который графически представляет пользователя. DrawableExplorer реализует интерфейс Drawable, который содержит:

    import java.awt.Graphics;

    public abstract interface Drawable
    {
      public abstract void draw(Graphics paramGraphics);
    }

это компилируется успешно, однако, я не могу понять, почему мой класс DrawableExplorer не:

    import java.awt.*;
    public class DrawableExplorer extends Explorer implements Drawable

{

    public DrawableExpolorer(Square location, Maze maze, String name)
        {
            public void draw(Graphics g)
                {
                    Square location = location();
                    get.setColor(Color.BLUE);
                    g.fillOval(loc.x() + 10, loc.y() + 10, 30, 30);

                }
        }
}

Он запрашивает тип возвращаемого значения, но не является ли мой метод недействительным?

Сообщение об ошибке компилятора гласит: «недопустимое объявление метода; требуется тип возврата»

1 Ответ

3 голосов
/ 10 февраля 2010

Вам нужно объявить класс как:

public class DrawableExplorer extends Explorer implements Drawable

т.е. Предложение extends должно предшествовать перед предложением implements.

Другая ошибка заключается в том, что вы объявили свой метод draw в теле конструктора для DrawableExplorer. Учитывая, что вы определили конструктор, который принимает три аргумента, вы, как правило, захотите обработать их в теле конструктора (вы в настоящее время игнорируете их); например назначая их переменным экземпляра.

...