public class CustomerBO {
    // CustomerData jest obiektem danych
    private CustomerData customerData;

    // ContactInfoBO jest zalenym obiektem biznesowym
    private ContactInfoBO contactInfoBO;

    public CustomerBO(CustomerData customerData) {
        // sprawdzanie poprawnoci wartoci CustomerData
        . . .
        // skopiwanie danych klienta do tego obiektu
        this.customerData = customerData;
    }

    public ContactInfoBO getContactInfoBO () {
        // jeli ContactInfoBO nie jest utworzony, pobranie danych z 
        // CustomerData i otoczenie ich przez 
        // ContactInfoBO
        if (contactInfoBO == null)
            contactInfoBO = new ContactInfoBO(
            customerData.getContactInfoData());
        return contactInfoBO;
    }

    // metody biznesowe CustomerBO
    . . . 
}