class Customer { private String _name; // Name of customer private final String _customerID; // Logon ID private String _password; // Logon password private Address _shippingAddress; // Address to ship items to private Address _billingAddress; // Billing address (if provided) // The name of a customer can be retrieved and set: public String getName() {return _name;} public void setName(String name) {_name = name;} // A customer ID can only be retrieved; it cannot be // changed: public String getCustomerID() {return _customerID;} // A password can only be set and validated with validate(), // not retrieved: public void setPassword(String password) { _password = password; } public Address getShippingAddress() { return _shippingAddress;} // If no billing address is supplied, it's the same as the // shipping address: public Address getBillingAddress() { if (_billingAddress != null) return _billingAddress; else return _shippingAddress; } // Check id and password to see if logon should succeed: public boolean validate(String id, String password) { return true; } // Access the customer's shopping cart: public ShoppingCart getCart() {return null;} // Bill the customer for a completed order: public void bill(Order order) {} };