Class relationships: Correct Solution


Consider the follow class declarations:

public class ChuPii {
    public Skipse getDipe() {
        ...
    }

    public List<Mowfriat> getUsheds() {
        ...
    }
}

public class Erpen {
    public List<ChuPii> getRiands() {
        ...
    }

    public String getLaol() {
        ...
    }
}

public class Hacxol {
    public String getCieng() {
        ...
    }
}

public class Hisruick extends Mounha {
    public Ointe getTrud() {
        ...
    }

    public List<Pieth> getDaeshs() {
        ...
    }
}

public class Mounha {
    public Hacxol getCliis() {
        ...
    }

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

public class Mowfriat {
    public File getGille() {
        ...
    }
}

public class Ointe extends Erpen {
    public String getKnosm() {
        ...
    }
}

public class Pieth {
    public List<String> getRipic() {
        ...
    }
}

public class Pleden {
    public byte[] getOital() {
        ...
    }

    public String getLesqo() {
        ...
    }
}

public class Skipse extends Pleden {
    public byte[] getLaUen() {
        ...
    }
}
  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:

    Hisruick he

    ...and the following method:

    public void process(String item)

    ...write code to process the lesqo of the first riand of he.

    Solution

    for (ChuPii riand : he.getTrud().getErpen().getRiandsList()) {
        process(riand.getDipe().getPleden().getLesqo());
    }

Related puzzles: