Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. using System;
  2.  
  3. public class Test
  4. {
  5. class Car
  6. {
  7. public string Chasis {get;set;}
  8. public string Wheels {get;set;}
  9. public string Seats {get;set;}
  10. }
  11.  
  12. interface ICarBuilder
  13. {
  14. void BuildChasis();
  15. void AddWheels();
  16. void AddSeats();
  17. Car GetBuiltCar();
  18. }
  19.  
  20. interface IDirector
  21. {
  22. void BuildCar(ICarBuilder builder);
  23.  
  24. }
  25.  
  26. class ToyotaBuilder : ICarBuilder
  27. {
  28. private Car corolla = new Car();
  29. public void BuildChasis()
  30. {
  31. corolla.Chasis = "Toyota Corolla";
  32. }
  33.  
  34. public void AddWheels()
  35. {
  36. corolla.Wheels = "Alloy";
  37.  
  38. }
  39. public void AddSeats()
  40. {
  41. corolla.Seats = "Corduroy";
  42. }
  43. public Car GetBuiltCar()
  44. { return corolla; }
  45.  
  46. }
  47.  
  48. class Toyota : IDirector
  49. {
  50. public void BuildCar(ICarBuilder cb)
  51. {
  52. cb.BuildChasis();
  53. cb.AddWheels();
  54. cb.AddSeats();
  55. }
  56. }
  57.  
  58. public static void Main()
  59. {
  60. Console.WriteLine("Hello World");
  61.  
  62. var tb = new ToyotaBuilder();
  63. var td = new Toyota();
  64.  
  65. td.BuildCar(tb);
  66. var car = tb.GetBuiltCar();
  67.  
  68. Console.WriteLine("Built {0} with {1} wheels and {2} seats!"
  69. , car.Chasis, car.Wheels, car.Seats);
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement