Class relationships: Correct Solution


Consider the follow class declarations:

public class Becstar {
    public byte[] getQon() {
        ...
    }
}

public class Centad {
    public List<Phodoss> getUacs() {
        ...
    }

    public Ioed getTrion() {
        ...
    }
}

public class Chea {
    public List<String> getNacde() {
        ...
    }
}

public class DicChent {
    public File getCephe() {
        ...
    }
}

public class DraTooc extends Centad {
    public byte[] getHudsa() {
        ...
    }
}

public class Duthul {
    public List<Piop> getDisms() {
        ...
    }

    public List<MaiIstast> getDeIrsases() {
        ...
    }
}

public class Froud {
    public List<String> getPeo() {
        ...
    }
}

public class Gocin {
    public Ightthid getSeAn() {
        ...
    }

    public Becstar getRoLi() {
        ...
    }
}

public class Icront extends Gocin {
    public List<String> getUfus() {
        ...
    }
}

public class Ightthid {
    public List<Ridni> getEnDalos() {
        ...
    }

    public List<Froud> getDuCaxs() {
        ...
    }
}

public class Ioed {
    public int getSaGalin() {
        ...
    }
}

public class MaiIstast {
    public int getIart() {
        ...
    }
}

public class Pelal {
    public byte[] getEph() {
        ...
    }
}

public class Pesi {
    public File getRoga() {
        ...
    }
}

public class Phodoss extends Prean {
    public DicChent getEae() {
        ...
    }

    public List<Pesi> getPepas() {
        ...
    }

    public Searre getTrea() {
        ...
    }
}

public class Piop {
    public File getIdMemel() {
        ...
    }
}

public class Pnod {
    public Icront getEich() {
        ...
    }

    public File getOwUsqor() {
        ...
    }
}

public class Prean {
    public List<String> getOnZa() {
        ...
    }
}

public class Qing extends Chea {
    public Tunt getLun() {
        ...
    }
}

public class RalQeshde {
    public List<Sirp> getGiGehoms() {
        ...
    }

    public String getAlDoi() {
        ...
    }
}

public class Ridni extends Duthul {
    public List<Qing> getFunens() {
        ...
    }
}

public class Searre {
    public File getOsass() {
        ...
    }

    public List<String> getVanke() {
        ...
    }
}

public class Sirp extends Pnod {
    public Pelal getCeth() {
        ...
    }
}

public class Tunt extends DraTooc {
    public int getMoOsdua() {
        ...
    }
}
  1. Draw a diagram showing the class relationships.

    You only need to diagram the classes listed above. You only need to show the name of each class; do not show their methods or properties.

    Draw arrows between the classes that have relationships, and label each arrow with one of the following:

    Make sure your arrows point in the correct direction!

    Solution

  2. Given the following variable:

    RalQeshde vi

    ...and the following method:

    public void process(List<String> item)

    ...write code to process the vanke of each uac of the first funen of each enDalo of the first giGehom of vi.

    Solution

    for (Sirp giGehom : vi.getGiGehomsList()) {
        for (Qing funen : giGehom.getPnod().getEich().getGocin().getSeAn().getEnDalos().get(0).getFunensList()) {
            process(funen.getLun().getDraTooc().getCentad().getUacs().get(0).getTrea().getVanke());
        }
    }

Related puzzles: