Hi all,

So I have to write a program based on different levels of service that can be provided, depending on fees that someone pays. So far I have written two classes, but before i continue could someone give me advice on if this is looking right or am going in the wrong direction


Code:
enum DeliveryType {Basic, Advanced, Super}

Code:
public class DeliveryService {

    // Define fees advanced
	
    private final int ADVANCED_DELIVERY_FEE = 15;
   
    // Define fees for basic
	
    private final int BASIC_DELIVERY_FEE = 12;
	
    // Define fees for super
	
    private final int SUPER_DELIVERY_FEE = 35;
  

    public Delivery Service(String type) {
        setDeliveryServiceByType(type);
    }

    public DeliveryService(int deliveryFee) {
        setdeliveryFee(deliveryFee);
  
    }


    public void setDeliveryServiceByType(String type) {
        switch (type) {
            case "B":
                setDeliveryServiceType(DeliveryServiceType.Basic);
                setDeliveryServiceCost(BASIC_DELIVERY_FEE);
                break;
            case "A":
                setDeliveryServiceType(DeliveryServiceType.Advanced);
                setDeliveryServiceCost(ADVANCED_DELIVERY_FEE);
                break;
            case "S":
                setDeliveryServiceType(DeliveryServiceType.Super);
                setDeliveryServiceCost(SUPER_DELIVERY_FEE);
                break;
            default:
                throw new IllegalArgumentException("Invalid Membership Type");
        }
    }

    private int _deliveryserviceCost;

    public void setdeliveryserviceCost(int fee) {
        if (fee <= 0) throw new IllegalArgumentException("Fee must not be Zero.");
        _membershipCost = fee;
    }

    public int getdeliveryserviceCost() {
        return _deliveryserviceCost;
    }

    private DeliveryServiceType _deliveryserviceType;
    private void setDeliveryServiceType(DeliveryServiceType type) {
        _deliveryserviceType = type;
    }
    public DeliveryServiceType getDeliveryServiceType() {
        return _deliveryserviceType;
    }
}
import java.text.SimpleDateFormat; import java.util.Date; import java.util.UUID; public class Customer { public Customer(String first, String last, String type) { setFirstName(first); setLastName(last); setOrderNumber(); setStartDate(); Customer = new Customer(type); } public Customer Customer; private DeliveryServiceType _deliveryserviceType; public void setdeliveryserviceType(DeliveryServiceType type) { _deliveryserviceType = type; } public deliveryserviceType getdeliveryserviceType() { return _deliveryserviceType; } public String getName() { return String.format("%s, %s", getLastName(), getFirstName()); } private String _firstname; public void setFirstName(String name) { _firstname = name; } public String getFirstName() { return _firstname; } private String _lastname; public void setLastName(String name) { _lastname = name; } public String getLastName() { return _lastname; } private UUID _customerNumber; private void setcustomerNumber() { _customerNumber = UUID.randomUUID(); } public String getcustomerNumber() { return _getcustomerNumber.toString(); } }