public static IOffer CreateOffer(OfferType type) { IOffer offer = null; switch (type) { case OfferType.Sale: offer = new SaleOffer(); break; case OfferType.Rent: offer = new RentOffer(); break; default: break; } return offer; }
public static IOffer CreateOffer(OfferType type) { Offer offer; switch (type) { case OfferType.Rent: offer = new RentOffer(); break; case OfferType.Sale: offer = new SaleOffer(); break; default: throw new ArgumentException("Invalid type for offer."); } return offer; }