|
|
|
|
79
|
|
79
|
|
80
|
|
80
|
|
81
|
-
|
81
|
-
|
82
|
-# Part 6.1 - Create `Cohort` class
|
|
|
83
|
-* Create a `Cohort` class.
|
|
|
84
|
- * The class should instantiate an `ArrayList` field of `Student` objects named `studentList`.
|
|
|
85
|
- * The class should define a method named `addStudent` which adds a `Student` to the `studentList`.
|
|
|
86
|
- * The class should define a method named `findStudentById` which makes use of a `long id` parameter to return a `Student` object with the respective `id` field.
|
|
|
87
|
- * The class should define a method named `getStudents` which returns an array representation of the `studentList`.
|
|
|
88
|
- * The class should define a named `removeStudents` which clears our `studentList`.
|
|
|
|
|
82
|
+# Part 6.1 - Create `People` class
|
|
|
83
|
+* Create a `People` class.
|
|
|
84
|
+ * The class should instantiate an `ArrayList` field of `Person` objects named `personList`.
|
|
|
85
|
+ * The class should define a method named `add` which adds a `Person` to the `personList`.
|
|
|
86
|
+ * The class should define a method named `findById` which makes use of a `long id` parameter to return a `Person` object with the respective `id` field.
|
|
|
87
|
+ * The class should define a method named `remove` which makes use of a `Person person` parameter to remove a respective `Person` object.
|
|
|
88
|
+ * The class should define a method named `remove` which makes use of a `long id` parameter to remove a `Person` object with the respective `id` field.
|
|
|
89
|
+ * The class should define a method named `getArray` which returns an array representation of the `personList` field.
|
|
|
90
|
+ * The class should define a named `removeAll` which clears our `personList` field.
|
89
|
|
91
|
|
90
|
-
|
92
|
-
|
91
|
-# Part 6.0 - Test `Cohort`
|
|
|
92
|
-* Create a `TestCohort` class.
|
|
|
93
|
- * Create a `testAddStudent` method which ensures that our `studentList` in our `Cohort` class populated with respective `Student` objects following invokation of the `addStudent` method.
|
|
|
94
|
- * Create a `testRemoveStudents` method which ensures that our `studentList` in our `Cohort` class is **depopulated** with respective `Student` objects following invokation of the `removeStudent` method.
|
|
|
|
|
93
|
+# Part 6.0 - Test `People`
|
|
|
94
|
+* Create a `TestPeople` class.
|
|
|
95
|
+ * Create a `testAdd` method which ensures that our `personList` in our `People` class populated with respective `Student` objects following invokation of the `addStudent` method.
|
|
|
96
|
+ * Create a `testRemove` method which ensures that the `personList` in a `People` object is **depopulated** with a respective `Person` object following the invokation of the `removeStudent` method.
|
|
|
97
|
+ * Create a `testRemoveStudents` method which ensures that our `studentList` in our `People` class is **depopulated** with respective `Perspm` objects following invokation of the `remove` method.
|
|
|
98
|
+ * Create a `testFindById` method which ensures that a respective `Person` object with a respective `id` field is returned upon invokation of the `findById` method on a respective `People` object.
|
|
|
99
|
+
|
|
|
100
|
+
|
|
|
101
|
+-
|
|
|
102
|
+# Part 7.1 - Create `MyCohort` singleton
|
|
|
103
|
+* **Note:** The creation of this class will demonstrate an implementation of [singleton design pattern](https://www.journaldev.com/1377/java-singleton-design-pattern-best-practices-examples).
|
|
|
104
|
+* Create a `MyCohort` class.
|
|
|
105
|
+ * The class should be a subclass of the `People` class.
|
|
|
106
|
+ * The class should _statically instantiate_ a `final` field named `INSTANCE` of type `MyCohort`.
|
|
|
107
|
+ * The class should define a _private constructor_ which populates the `INSTANCE` field with respective `Student` representations of your colleagues.
|
|
|
108
|
+ * Each student should have a unique `id` field.
|
|
|
109
|
+ * The class should define a `getInstance` method which returns the `INSTANCE` field.
|
95
|
|
110
|
|
96
|
|
111
|
|
|
|
112
|
+
|
97
|
-
|
113
|
-
|
98
|
# Part 7.0 - Test `MyCohort` singleton
|
114
|
# Part 7.0 - Test `MyCohort` singleton
|
99
|
* Create a `TestMyCohort` class.
|
115
|
* Create a `TestMyCohort` class.
|
100
|
* Create a `test` method which ensures that each of the students in your current cohort are in your `MyCohort` singleton.
|
116
|
* Create a `test` method which ensures that each of the students in your current cohort are in your `MyCohort` singleton.
|
101
|
|
117
|
|
102
|
-
|
118
|
-
|
103
|
-# Part 7.1 - Create `MyCohort` singleton
|
|
|
104
|
-* Create a `MyCohort` class using the _singleton design pattern_.
|
|
|
105
|
- * The class should populate a composite `private` `Cohort` field with `Student` object-representations of each of your classmates.
|
|
|
106
|
- * The composite `Cohort` field should be exposed to the client via a `getCohort` method.
|
|
|
|
|
119
|
+# Part 7.2 - Create `ZipCodeInstructors` singleton
|
|
|
120
|
+* Use `Part 7.0` and `Part 7.1` as a reference.
|
|
|
121
|
+* Create a `ZipCodeInstructors` singleton which represents the set of instructors at ZipCodeWilmington.
|
|
|
122
|
+* Create a `TestZipCodeInstructors` class.
|
|
|
123
|
+
|
107
|
|
124
|
|
108
|
|
125
|
|
109
|
-
|
126
|
-
|