gewusst wie: überschreiben einer abstrakten Methode in einer Unterklasse?

Habe ich zum erstellen von Unterklassen einer abstrakten Oberklasse, die drucken Sie Formen, jedoch immer wenn ich versuche ein Objekt zu erschaffen, es sagt mir, dass ich kann nicht instanziiert werden eine abstrakte Klasse ist, und wenn ich entfernen Sie das Schlüsselwort abstract aus meinem code, überschreibt er sagt, ich kann nicht tun, dass entweder.

Mein code:

public class Rectangle extends VectorObject {
    protected int ID, x, y, xlnth, ylnth;
    protected int matrix[][];

    Rectangle(int id, int ax, int ay, int xlen, int ylen) {
        super(id, ax, ay);
        xlnth = xlen;
        ylnth = ylen;
    }

    public int getId() {
        return ID;
    }

    public void draw() {
        String [][] matrix = new String[20][20];
        for (int i = 0; i < 20; i++) {
            for (int j = 0; j < 20; j++) {
                if (i == x) {
                    matrix[i][y] = "*";
                }
                if (j==y) {
                    matrix[i][y] = "*";
                }
                System.out.println(matrix[i][y]);
            }
        }
    }
}

Abstrakten Eltern-Klasse:

abstract class VectorObject {
    protected int id, x, y;

    VectorObject(int anId, int ax, int ay) {
        id = anId;
        x = ax;
        y = ay;
    }

    int getId() {
        return id;
    }

    void setNewCoords(int newx, int newy) {
        x = newx;
        y = newy;
    }

    public abstract void draw (char [][] matrix);
}
  • Mach dir nicht zu viele sorgen über Fehler zu machen jetzt. Nur lernen, und zahlen Ihre Aufmerksamkeit!
  • Ihr Titel und die Fehlermeldung, die Sie erwähnen, sind nicht miteinander verwandt. Bitte klären Sie.
Schreibe einen Kommentar