Class relationships: Correct Solution


Consider the follow class declarations:

public class Bidhai {
    public File getIldi() {
        ...
    }
}

public class BruEsm extends Roal {
    public List<Untre> getScles() {
        ...
    }
}

public class Bullfe {
    public String getIgBu() {
        ...
    }
}

public class Caben {
    public byte[] getIlwar() {
        ...
    }
}

public class Doudma {
    public Eboght getIpen() {
        ...
    }

    public List<Odand> getHioses() {
        ...
    }
}

public class Eboght {
    public File getPaPusse() {
        ...
    }

    public List<Sqodel> getIsSas() {
        ...
    }
}

public class Elas {
    public List<BruEsm> getOsses() {
        ...
    }

    public Scenig getIprun() {
        ...
    }
}

public class Essled {
    public File getBrell() {
        ...
    }

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

public class Etcat {
    public List<String> getAeEn() {
        ...
    }
}

public class Facci extends Doudma {
    public byte[] getEnt() {
        ...
    }
}

public class IerCrertkhec {
    public String getEba() {
        ...
    }
}

public class Inteek extends Bidhai {
    public Essled getCeco() {
        ...
    }

    public Bullfe getFasm() {
        ...
    }

    public List<Caben> getLaPos() {
        ...
    }
}

public class Iodast {
    public String getJort() {
        ...
    }

    public List<Etcat> getBresses() {
        ...
    }
}

public class KisEsdom extends ThiEror {
    public Sheca getAclir() {
        ...
    }
}

public class Muistrir {
    public File getIeTes() {
        ...
    }

    public List<KisEsdom> getHaChirs() {
        ...
    }
}

public class Odand {
    public File getScorm() {
        ...
    }
}

public class Roal extends IerCrertkhec {
    public Facci getSihu() {
        ...
    }
}

public class Scenig {
    public byte[] getPiric() {
        ...
    }
}

public class Sheca {
    public int getPiMoars() {
        ...
    }
}

public class Sqodel {
    public byte[] getAtBacen() {
        ...
    }

    public Muistrir getArpo() {
        ...
    }
}

public class ThiEror extends Inteek {
    public String getRohai() {
        ...
    }
}

public class Untre extends Iodast {
    public File getPra() {
        ...
    }
}
  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:

    Elas eug

    ...and the following method:

    public void process(List<String> item)

    ...write code to process the uret of the first haChir of the first isSa of the first oss of eug.

    Solution

    for (BruEsm oss : eug.getOssesList()) {
        for (Sqodel isSa : oss.getRoal().getSihu().getDoudma().getIpen().getIsSasList()) {
            for (KisEsdom haChir : isSa.getArpo().getHaChirsList()) {
                process(haChir.getThiEror().getInteek().getCeco().getUret());
            }
        }
    }

Related puzzles: