Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.31 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace OOP_example
  8. {
  9.  
  10. class Student
  11. {
  12. private string firstName; // fields , pazqt vremennite danni za class-a
  13. private string lastName; // Access modifiers = private , za da mogat da se dostupvat samo ot tozi class
  14. private string fullName;
  15. readonly string number; // readOnly , za da moje ID nomera da se suzdava unikalen pri suzdavaneto na obekt ot constr i da ne se promenq
  16.  
  17. public Student() // constructor -- ako suzdadem student bez vhodni parametri
  18. {
  19. fullName = "<Anonymous>";
  20. number = Guid.NewGuid().ToString(); // davam unikalen nomer ID za vseki nov student
  21. }
  22. public Student(string firstName, string lastName) // constructor -- ako ima FN i LN
  23. {
  24. if (firstName.Length < 3 || firstName == null || firstName.Length > 15) // validation
  25. {
  26. throw new ArgumentException("Please, enter valid first name! (between 3 and 15 symbols ) ");
  27. }
  28. if (lastName.Length < 3 || lastName == null || lastName.Length > 15)
  29. {
  30. throw new ArgumentException("Please, enter valid last name! (between 3 and 15 symbols ) ");
  31. }
  32.  
  33. fullName = firstName + " " + lastName;
  34. number = Guid.NewGuid().ToString();
  35. }
  36.  
  37. public string FirstName // Property za FName --> tuk pravq validaciq za da setna stoinost , ima getter za da moje da se polzva stoinostta
  38. {
  39. get
  40. {
  41. return this.firstName;
  42. }
  43. set
  44. {
  45. if (value.Length < 3 || value == null || value.Length > 15)
  46. {
  47. throw new ArgumentException("Please, enter valid first name! (between 3 and 15 symbols ) ");
  48. }
  49. else
  50. {
  51. this.firstName = value;
  52. }
  53. }
  54. }
  55. public string LastName // prop za last name , validation
  56. {
  57. get
  58. {
  59. return this.lastName;
  60. }
  61. set
  62. {
  63. if (value.Length < 3 || value == null || value.Length > 15)
  64. {
  65. throw new ArgumentException("Please, enter valid last name! (between 3 and 15 symbols ) ");
  66. }
  67. else
  68. {
  69. this.lastName = value;
  70. }
  71. }
  72. }
  73. public string FullName
  74. {
  75. get
  76. {
  77. return this.fullName;
  78. }
  79. set
  80. {
  81. if (value.Length < 3 || value == null || value.Length > 30)
  82. {
  83. throw new ArgumentException("Please, enter valid Full name! (between 3 and 15 symbols ) ");
  84. }
  85.  
  86. else
  87. {
  88. fullName = value;
  89. }
  90.  
  91. }
  92. } // Ne e nujna validaciq , tui kato sum checknal first i last name po otdelno
  93.  
  94.  
  95. public void GoToExam() // method
  96. {
  97. if (firstName != null && lastName != null) // imam IF ako purvona4alno obekta e suzdaden bez parametri, no v posledstvie
  98. // e populnil first i last name , PODOZIRAM che ima po inteligenten na4in !
  99. {
  100. fullName = firstName + " " + lastName;
  101. }
  102. Console.WriteLine(@"The student {0} with student's ID = ""{1}"" go to SoftSkills exam", fullName, number);
  103. }
  104. }
  105.  
  106.  
  107. class Program
  108. {
  109. static void Main(string[] args)
  110. {
  111. // obekt bez parametri, v posledstvie zadavame stoinost na property-to FullName, trqbva da mine validaciq
  112. Student Ivan = new Student();
  113. Ivan.FullName = "Stoyan Rusev";
  114. Ivan.GoToExam();
  115. Console.WriteLine();
  116.  
  117. // obekt sus 2 vhodni parametera FN i LN , vseki trqbva da mine validaciq
  118. Student T = new Student("Todor", "Karamfilov");
  119. T.GoToExam();
  120. Console.WriteLine();
  121.  
  122. // obekt s prazen konstruktor, na koito v posledstvie zadavam stoinost na FN i LN
  123. var student3 = new Student();
  124. student3.FirstName = "Dimitar";
  125. student3.LastName = "Petrov";
  126. student3.GoToExam();
  127. Console.WriteLine();
  128.  
  129. // otnovo prazen ctor, v posledstvie zadavame samo FN.
  130. var student4 = new Student(); // v tozi slu4ai studenta trqbva da e Unknown tui kato e dal samo first name
  131. student4.FirstName = "Rosen";
  132. student4.GoToExam();
  133. Console.WriteLine();
  134.  
  135. //// Exeption :
  136. //var exeption = new Student("TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT", "");
  137.  
  138. //// Exeption2 :
  139. //var exeption2 = new Student();
  140. //exeption2.FirstName = "";
  141.  
  142. //// Exeption3 :
  143. //var exeption3 = new Student();
  144. //exeption3.LastName = "ssssssssssssssssssssssssssssssssssssssssssssssssssss";
  145. }
  146. }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement