Wielokrotne dziedzieczenie

0

Borykam sie z problemem, czy po klasie abstrakcyjnej moze dziedziczyc kolejna klasa abstrakcyjna. Mianowicie, dla nastepujacego kodu:

 for (int i = 0; i < Wysepka.wielkoscwyspy; i++) {
            Zasoby z = zasoby[i];
            int[] polozenie = z.pobierzPolozenie();
            int k = polozenie[0];//polozenie w pionie
            int m = polozenie[1];//polozenie w poziomie 
            //Id na podstawie sygnatury obiektow;
id=z.pobierzSygnature;
wspolrzedne[k][m] = id;
        }

z.pobierzSygnature; zwraca mi blad: "cannot find symbol pobierzSygnature".
W abstrakcyjnej klasie Zasoby mam zdefiniowana metode:
public abstract int pobierzSygnature();

Po klasie zasoby dziedziczy klasa Trawa, oraz abstrakcyjna klasa zwierzeta, w ktorej tez jest zdefiniowane:

public abstract int pobierzSygnature();

Po klasie zwierzeta dziedzicza klasy Kiwi i Sepy. W wszystkich trzech klasach (Kiwi, Sepy, Trawa) jest zdefiniowana metoda pobierzSygnature. Dlaczego wiec

id=z.pobierzSygnature;

nie chce sie wykonywac? Czy nie powinien zadzialac polimorfizm i mimo ze w tablicy zasoby znajdaja sie obiekty klasy: Kiwi, Zwirzeta i Sepy komilator nie powinien sam znaleŹĆ odpowiedniej metody. A moze bladze i jest to wina wielokrotnego dziedziczenia? Prosze o pomoc

0

metody wywoluje sie metoda(argumenty) :)

0
Freakman napisał(a)

metody wywoluje sie metoda(argumenty) :)

[wstyd] [wstyd] [wstyd]
Dzieki stary, jesteś wielki :) Tak to jest jak sie człowiek spieszy żeby oddać projekt, nic nie idzie i sie robi najbanalniejsze błędy ;/

0

nie martw sie ja 2 dni siedzialem nad bledem bo nie wywolywalem super w klasie podrzednej.. :)

0

Tak btw i mimo, że problem jest rozwiązany:

zasoby
|
/ /
trawa zwierzęta

Niezła hierarchia dziedziczenia...

1 użytkowników online, w tym zalogowanych: 0, gości: 1