private Item getCheapestItem() {
        Map<Class<? extends Item>, BigDecimal> prices = new HashMap<Class<? extends Item>, BigDecimal>();

        for (Class<? extends Item> genericResource : this.getActualItems()) {
            prices.put(genericResource, PriceCalculator.calculateItemPrice(genericResource));
        }

        try {
            return PriceCalculator.getCheapest(prices).newInstance();
        } catch (InstantiationException e) {
            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
        } catch (IllegalAccessException e) {
            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
        }
        return null;
    }