Class relationships: Correct Solution


Consider the follow class declarations:

public class Blach extends Pheh {
    public Riangspa getReah() {
        ...
    }
}

public class Cang extends Secism {
    public List<Hessgi> getAldips() {
        ...
    }

    public Cudre getPism() {
        ...
    }
}

public class Cengist {
    public Gredprass getDolhe() {
        ...
    }

    public Thelchi getBenia() {
        ...
    }

    public List<Esming> getStreas() {
        ...
    }
}

public class Cudre {
    public List<Dicsar> getCiltis() {
        ...
    }

    public File getAchlo() {
        ...
    }
}

public class Dicsar extends Blach {
    public File getCikin() {
        ...
    }
}

public class Docu extends Eirt {
    public List<String> getPleac() {
        ...
    }
}

public class Eirt {
    public int getMiw() {
        ...
    }
}

public class Ermun {
    public String getRer() {
        ...
    }
}

public class Esming {
    public int getTeShian() {
        ...
    }
}

public class Flathec {
    public int getSper() {
        ...
    }

    public List<Cang> getMiThras() {
        ...
    }
}

public class Gredprass {
    public File getItTrai() {
        ...
    }

    public LalCassses getPriu() {
        ...
    }
}

public class Gron {
    public byte[] getReHur() {
        ...
    }
}

public class Hesfla extends Prir {
    public byte[] getEnIac() {
        ...
    }
}

public class Hessgi {
    public int getIchir() {
        ...
    }
}

public class IerOffte {
    public String getIaQos() {
        ...
    }

    public Skelner getAcEoc() {
        ...
    }
}

public class LalCassses {
    public File getUelt() {
        ...
    }
}

public class Pheh {
    public byte[] getCeeae() {
        ...
    }
}

public class Prermid {
    public List<String> getGulil() {
        ...
    }
}

public class Prir {
    public List<IerOffte> getSucs() {
        ...
    }

    public List<Prermid> getShuses() {
        ...
    }

    public Ermun getAlti() {
        ...
    }
}

public class Raal {
    public Gron getHaCo() {
        ...
    }

    public int getEdce() {
        ...
    }

    public int getHedo() {
        ...
    }
}

public class Riangspa {
    public List<Cengist> getPaLoulms() {
        ...
    }

    public List<Docu> getNeDas() {
        ...
    }
}

public class Secism {
    public int getRal() {
        ...
    }
}

public class Skelner extends Flathec {
    public String getUaChiss() {
        ...
    }
}

public class Thelchi extends Raal {
    public List<String> getNec() {
        ...
    }
}
  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:

    Hesfla pooc

    ...and the following method:

    public void process(int item)

    ...write code to process the hedo of the first paLoulm of the first cilti of each miThra of each suc of pooc.

    Solution

    for (Dicsar cilti : pooc.getPrir().getSucs().get(0).getAcEoc().getFlathec().getMiThras().get(0).getPism().getCiltisList()) {
        for (Cengist paLoulm : cilti.getBlach().getReah().getPaLoulmsList()) {
            process(paLoulm.getBenia().getRaal().getHedo());
        }
    }

Related puzzles: