#31 classes written finished up until part 7

오픈
jacob-andersen jacob-andersen/CR-MacroLabs-OOP-InstructorStudentClassroom:master 에서 master 로 1 commits 를 머지하려 합니다

+ 1
- 0
.idea/.name 파일 보기

@@ -0,0 +1 @@
1
+interfaces-1

+ 16
- 0
.idea/compiler.xml 파일 보기

@@ -0,0 +1,16 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="CompilerConfiguration">
4
+    <annotationProcessing>
5
+      <profile name="Maven default annotation processors profile" enabled="true">
6
+        <sourceOutputDir name="target/generated-sources/annotations" />
7
+        <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
8
+        <outputRelativeToContentRoot value="true" />
9
+        <module name="interfaces-1" />
10
+      </profile>
11
+    </annotationProcessing>
12
+    <bytecodeTargetLevel>
13
+      <module name="interfaces-1" target="7" />
14
+    </bytecodeTargetLevel>
15
+  </component>
16
+</project>

+ 6
- 0
.idea/encodings.xml 파일 보기

@@ -0,0 +1,6 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="Encoding">
4
+    <file url="file://$PROJECT_DIR$" charset="UTF-8" />
5
+  </component>
6
+</project>

+ 13
- 0
.idea/libraries/Maven__junit_junit_4_12.xml 파일 보기

@@ -0,0 +1,13 @@
1
+<component name="libraryTable">
2
+  <library name="Maven: junit:junit:4.12">
3
+    <CLASSES>
4
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/" />
5
+    </CLASSES>
6
+    <JAVADOC>
7
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-javadoc.jar!/" />
8
+    </JAVADOC>
9
+    <SOURCES>
10
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-sources.jar!/" />
11
+    </SOURCES>
12
+  </library>
13
+</component>

+ 13
- 0
.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml 파일 보기

@@ -0,0 +1,13 @@
1
+<component name="libraryTable">
2
+  <library name="Maven: org.hamcrest:hamcrest-core:1.3">
3
+    <CLASSES>
4
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" />
5
+    </CLASSES>
6
+    <JAVADOC>
7
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" />
8
+    </JAVADOC>
9
+    <SOURCES>
10
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" />
11
+    </SOURCES>
12
+  </library>
13
+</component>

+ 13
- 0
.idea/misc.xml 파일 보기

@@ -0,0 +1,13 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="MavenProjectsManager">
4
+    <option name="originalFiles">
5
+      <list>
6
+        <option value="$PROJECT_DIR$/pom.xml" />
7
+      </list>
8
+    </option>
9
+  </component>
10
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
11
+    <output url="file://$PROJECT_DIR$/classes" />
12
+  </component>
13
+</project>

+ 8
- 0
.idea/modules.xml 파일 보기

@@ -0,0 +1,8 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="ProjectModuleManager">
4
+    <modules>
5
+      <module fileurl="file://$PROJECT_DIR$/interfaces-1.iml" filepath="$PROJECT_DIR$/interfaces-1.iml" />
6
+    </modules>
7
+  </component>
8
+</project>

+ 124
- 0
.idea/uiDesigner.xml 파일 보기

@@ -0,0 +1,124 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="Palette2">
4
+    <group name="Swing">
5
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
6
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
7
+      </item>
8
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
9
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
10
+      </item>
11
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
12
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
13
+      </item>
14
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
15
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
16
+      </item>
17
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
18
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
19
+        <initial-values>
20
+          <property name="text" value="Button" />
21
+        </initial-values>
22
+      </item>
23
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
24
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
25
+        <initial-values>
26
+          <property name="text" value="RadioButton" />
27
+        </initial-values>
28
+      </item>
29
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
30
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
31
+        <initial-values>
32
+          <property name="text" value="CheckBox" />
33
+        </initial-values>
34
+      </item>
35
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
36
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
37
+        <initial-values>
38
+          <property name="text" value="Label" />
39
+        </initial-values>
40
+      </item>
41
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
42
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
43
+          <preferred-size width="150" height="-1" />
44
+        </default-constraints>
45
+      </item>
46
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
47
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
48
+          <preferred-size width="150" height="-1" />
49
+        </default-constraints>
50
+      </item>
51
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
52
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
53
+          <preferred-size width="150" height="-1" />
54
+        </default-constraints>
55
+      </item>
56
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
57
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
58
+          <preferred-size width="150" height="50" />
59
+        </default-constraints>
60
+      </item>
61
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
62
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
63
+          <preferred-size width="150" height="50" />
64
+        </default-constraints>
65
+      </item>
66
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
67
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
68
+          <preferred-size width="150" height="50" />
69
+        </default-constraints>
70
+      </item>
71
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
72
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
73
+      </item>
74
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
75
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
76
+          <preferred-size width="150" height="50" />
77
+        </default-constraints>
78
+      </item>
79
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
80
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
81
+          <preferred-size width="150" height="50" />
82
+        </default-constraints>
83
+      </item>
84
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
85
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
86
+          <preferred-size width="150" height="50" />
87
+        </default-constraints>
88
+      </item>
89
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
90
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
91
+          <preferred-size width="200" height="200" />
92
+        </default-constraints>
93
+      </item>
94
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
95
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
96
+          <preferred-size width="200" height="200" />
97
+        </default-constraints>
98
+      </item>
99
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
100
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
101
+      </item>
102
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
103
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
104
+      </item>
105
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
106
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
107
+      </item>
108
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
109
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
110
+      </item>
111
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
112
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
113
+          <preferred-size width="-1" height="20" />
114
+        </default-constraints>
115
+      </item>
116
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
117
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
118
+      </item>
119
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
120
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
121
+      </item>
122
+    </group>
123
+  </component>
124
+</project>

+ 6
- 0
.idea/vcs.xml 파일 보기

@@ -0,0 +1,6 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="VcsDirectoryMappings">
4
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
+  </component>
6
+</project>

+ 732
- 0
.idea/workspace.xml 파일 보기

@@ -0,0 +1,732 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="ChangeListManager">
4
+    <list default="true" id="ed3eff7a-714a-4045-b2f1-74c5c00891cc" name="Default Changelist" comment="">
5
+      <change afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
6
+      <change afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
7
+      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__junit_junit_4_12.xml" afterDir="false" />
8
+      <change afterPath="$PROJECT_DIR$/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml" afterDir="false" />
9
+      <change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
10
+      <change afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
11
+      <change afterPath="$PROJECT_DIR$/.idea/uiDesigner.xml" afterDir="false" />
12
+      <change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
13
+      <change afterPath="$PROJECT_DIR$/interfaces-1.iml" afterDir="false" />
14
+      <change afterPath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Instructor.java" afterDir="false" />
15
+      <change afterPath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/People.java" afterDir="false" />
16
+      <change afterPath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Students.java" afterDir="false" />
17
+      <change afterPath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Teacher.java" afterDir="false" />
18
+      <change afterPath="$PROJECT_DIR$/src/test/java/TestStudents.java" afterDir="false" />
19
+      <change afterPath="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/InstructorTest.java" afterDir="false" />
20
+      <change afterPath="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/PeopleTest.java" afterDir="false" />
21
+      <change afterPath="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/StudentTest.java" afterDir="false" />
22
+      <change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
23
+      <change beforePath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Person.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Person.java" afterDir="false" />
24
+      <change beforePath="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/TestPerson.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/TestPerson.java" afterDir="false" />
25
+    </list>
26
+    <ignored path="$PROJECT_DIR$/target/" />
27
+    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
28
+    <option name="SHOW_DIALOG" value="false" />
29
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
30
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
31
+    <option name="LAST_RESOLUTION" value="IGNORE" />
32
+  </component>
33
+  <component name="CoverageDataManager">
34
+    <SUITE FILE_PATH="coverage/interfaces_1$io_zipcoder_interfaces_in_interfaces_1.ic" NAME="io.zipcoder.interfaces in interfaces-1 Coverage Results" MODIFIED="1542070406128" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false">
35
+      <FILTER>io.zipcoder.interfaces.*</FILTER>
36
+    </SUITE>
37
+  </component>
38
+  <component name="FUSProjectUsageTrigger">
39
+    <session id="-1971816463">
40
+      <usages-collector id="statistics.lifecycle.project">
41
+        <counts>
42
+          <entry key="project.closed" value="9" />
43
+          <entry key="project.open.time.0" value="1" />
44
+          <entry key="project.open.time.1" value="1" />
45
+          <entry key="project.open.time.19" value="1" />
46
+          <entry key="project.open.time.2" value="4" />
47
+          <entry key="project.open.time.3" value="1" />
48
+          <entry key="project.open.time.6" value="1" />
49
+          <entry key="project.opened" value="9" />
50
+        </counts>
51
+      </usages-collector>
52
+      <usages-collector id="statistics.file.extensions.open">
53
+        <counts>
54
+          <entry key="JavaScript-modules-diagram//Users/jacobandersen/LABS/CR-MacroLabs-OOP-InstructorStudentClassroom/src/main/java/io/zipcoder/interfaces" value="1" />
55
+          <entry key="interfaces" value="1" />
56
+          <entry key="java" value="27" />
57
+          <entry key="xml" value="1" />
58
+        </counts>
59
+      </usages-collector>
60
+      <usages-collector id="statistics.file.types.open">
61
+        <counts>
62
+          <entry key="JAVA" value="27" />
63
+          <entry key="UML" value="2" />
64
+          <entry key="XML" value="1" />
65
+        </counts>
66
+      </usages-collector>
67
+      <usages-collector id="statistics.file.extensions.edit">
68
+        <counts>
69
+          <entry key="java" value="5449" />
70
+        </counts>
71
+      </usages-collector>
72
+      <usages-collector id="statistics.file.types.edit">
73
+        <counts>
74
+          <entry key="JAVA" value="5449" />
75
+        </counts>
76
+      </usages-collector>
77
+      <usages-collector id="statistics.spring.boot.mvc.usages" />
78
+      <usages-collector id="statistics.spring.boot.run.usages" />
79
+      <usages-collector id="statistics.vcs.git.usages" />
80
+      <usages-collector id="statistics.js.language.service.starts" />
81
+    </session>
82
+  </component>
83
+  <component name="FileEditorManager">
84
+    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
85
+      <file pinned="false" current-in-tab="false">
86
+        <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Students.java">
87
+          <provider selected="true" editor-type-id="text-editor">
88
+            <state relative-caret-position="705">
89
+              <caret line="47" lean-forward="true" selection-start-line="47" selection-end-line="47" />
90
+              <folding>
91
+                <element signature="e#220#221#0" expanded="true" />
92
+                <element signature="e#251#252#0" expanded="true" />
93
+              </folding>
94
+            </state>
95
+          </provider>
96
+        </entry>
97
+      </file>
98
+      <file pinned="false" current-in-tab="true">
99
+        <entry file="file://$PROJECT_DIR$/src/test/java/TestStudents.java">
100
+          <provider selected="true" editor-type-id="text-editor">
101
+            <state relative-caret-position="90">
102
+              <caret line="6" column="8" selection-start-line="6" selection-start-column="8" selection-end-line="6" selection-end-column="8" />
103
+            </state>
104
+          </provider>
105
+        </entry>
106
+      </file>
107
+    </leaf>
108
+  </component>
109
+  <component name="FileTemplateManagerImpl">
110
+    <option name="RECENT_TEMPLATES">
111
+      <list>
112
+        <option value="Interface" />
113
+        <option value="Class" />
114
+      </list>
115
+    </option>
116
+  </component>
117
+  <component name="FindInProjectRecents">
118
+    <findStrings>
119
+      <find>studentList</find>
120
+    </findStrings>
121
+    <replaceStrings>
122
+      <replace>personList</replace>
123
+    </replaceStrings>
124
+  </component>
125
+  <component name="Git.Settings">
126
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
127
+  </component>
128
+  <component name="IdeDocumentHistory">
129
+    <option name="CHANGED_PATHS">
130
+      <list>
131
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/Student.java" />
132
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Teacher.java" />
133
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Learner.java" />
134
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Instructor.java" />
135
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/People.java" />
136
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/People.java" />
137
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/PeopleTest.java" />
138
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/Students.java" />
139
+        <option value="$USER_HOME$/Downloads/-.java" />
140
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Students.java" />
141
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Student.java" />
142
+        <option value="$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Person.java" />
143
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/InstructorTest.java" />
144
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/TestPerson.java" />
145
+        <option value="$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/StudentTest.java" />
146
+        <option value="$PROJECT_DIR$/src/test/java/TestStudents.java" />
147
+      </list>
148
+    </option>
149
+  </component>
150
+  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
151
+  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
152
+  <component name="JsGulpfileManager">
153
+    <detection-done>true</detection-done>
154
+    <sorting>DEFINITION_ORDER</sorting>
155
+  </component>
156
+  <component name="MavenImportPreferences">
157
+    <option name="importingSettings">
158
+      <MavenImportingSettings>
159
+        <option name="importAutomatically" value="true" />
160
+      </MavenImportingSettings>
161
+    </option>
162
+  </component>
163
+  <component name="ProjectFrameBounds" fullScreen="true">
164
+    <option name="y" value="-1080" />
165
+    <option name="width" value="1920" />
166
+    <option name="height" value="1080" />
167
+  </component>
168
+  <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
169
+  <component name="ProjectView">
170
+    <navigator proportions="" version="1">
171
+      <foldersAlwaysOnTop value="true" />
172
+    </navigator>
173
+    <panes>
174
+      <pane id="ProjectPane">
175
+        <subPane>
176
+          <expand>
177
+            <path>
178
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
179
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
180
+            </path>
181
+            <path>
182
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
183
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
184
+              <item name="src" type="462c0819:PsiDirectoryNode" />
185
+            </path>
186
+            <path>
187
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
188
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
189
+              <item name="src" type="462c0819:PsiDirectoryNode" />
190
+              <item name="main" type="462c0819:PsiDirectoryNode" />
191
+            </path>
192
+            <path>
193
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
194
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
195
+              <item name="src" type="462c0819:PsiDirectoryNode" />
196
+              <item name="main" type="462c0819:PsiDirectoryNode" />
197
+              <item name="java" type="462c0819:PsiDirectoryNode" />
198
+            </path>
199
+            <path>
200
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
201
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
202
+              <item name="src" type="462c0819:PsiDirectoryNode" />
203
+              <item name="main" type="462c0819:PsiDirectoryNode" />
204
+              <item name="java" type="462c0819:PsiDirectoryNode" />
205
+              <item name="interfaces" type="462c0819:PsiDirectoryNode" />
206
+            </path>
207
+            <path>
208
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
209
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
210
+              <item name="src" type="462c0819:PsiDirectoryNode" />
211
+              <item name="test" type="462c0819:PsiDirectoryNode" />
212
+            </path>
213
+            <path>
214
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
215
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
216
+              <item name="src" type="462c0819:PsiDirectoryNode" />
217
+              <item name="test" type="462c0819:PsiDirectoryNode" />
218
+              <item name="java" type="462c0819:PsiDirectoryNode" />
219
+            </path>
220
+            <path>
221
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
222
+              <item name="CR-MacroLabs-OOP-InstructorStudentClassroom" type="462c0819:PsiDirectoryNode" />
223
+              <item name="src" type="462c0819:PsiDirectoryNode" />
224
+              <item name="test" type="462c0819:PsiDirectoryNode" />
225
+              <item name="java" type="462c0819:PsiDirectoryNode" />
226
+              <item name="interfaces" type="462c0819:PsiDirectoryNode" />
227
+            </path>
228
+            <path>
229
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
230
+              <item name="External Libraries" type="cb654da1:ExternalLibrariesNode" />
231
+            </path>
232
+            <path>
233
+              <item name="interfaces-1" type="b2602c69:ProjectViewProjectNode" />
234
+              <item name="External Libraries" type="cb654da1:ExternalLibrariesNode" />
235
+              <item name="Maven: junit:junit:4.12" type="70bed36:NamedLibraryElementNode" />
236
+            </path>
237
+          </expand>
238
+          <select />
239
+        </subPane>
240
+      </pane>
241
+      <pane id="Scope" />
242
+      <pane id="PackagesPane" />
243
+    </panes>
244
+  </component>
245
+  <component name="PropertiesComponent">
246
+    <property name="WebServerToolWindowFactoryState" value="false" />
247
+    <property name="aspect.path.notification.shown" value="true" />
248
+    <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1542217967819" />
249
+    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
250
+    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
251
+    <property name="nodejs_npm_path_reset_for_default_project" value="true" />
252
+    <property name="project.structure.last.edited" value="Project" />
253
+    <property name="project.structure.proportion" value="0.0" />
254
+    <property name="project.structure.side.proportion" value="0.0" />
255
+  </component>
256
+  <component name="RecentsManager">
257
+    <key name="MoveClassesOrPackagesDialog.RECENTS_KEY">
258
+      <recent name="io.zipcoder.interfaces" />
259
+    </key>
260
+  </component>
261
+  <component name="RunDashboard">
262
+    <option name="ruleStates">
263
+      <list>
264
+        <RuleState>
265
+          <option name="name" value="ConfigurationTypeDashboardGroupingRule" />
266
+        </RuleState>
267
+        <RuleState>
268
+          <option name="name" value="StatusDashboardGroupingRule" />
269
+        </RuleState>
270
+      </list>
271
+    </option>
272
+  </component>
273
+  <component name="RunManager" selected="JUnit.io.zipcoder.interfaces in interfaces-1">
274
+    <configuration name="InstructorTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
275
+      <module name="interfaces-1" />
276
+      <extension name="coverage">
277
+        <pattern>
278
+          <option name="PATTERN" value="io.zipcoder.interfaces.*" />
279
+          <option name="ENABLED" value="true" />
280
+        </pattern>
281
+      </extension>
282
+      <option name="PACKAGE_NAME" value="io.zipcoder.interfaces" />
283
+      <option name="MAIN_CLASS_NAME" value="io.zipcoder.interfaces.InstructorTest" />
284
+      <method v="2">
285
+        <option name="Make" enabled="true" />
286
+      </method>
287
+    </configuration>
288
+    <configuration name="InstructorTest.testInheritance" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
289
+      <module name="interfaces-1" />
290
+      <extension name="coverage">
291
+        <pattern>
292
+          <option name="PATTERN" value="io.zipcoder.interfaces.*" />
293
+          <option name="ENABLED" value="true" />
294
+        </pattern>
295
+      </extension>
296
+      <option name="PACKAGE_NAME" value="io.zipcoder.interfaces" />
297
+      <option name="MAIN_CLASS_NAME" value="io.zipcoder.interfaces.InstructorTest" />
298
+      <option name="METHOD_NAME" value="testInheritance" />
299
+      <option name="TEST_OBJECT" value="method" />
300
+      <method v="2">
301
+        <option name="Make" enabled="true" />
302
+      </method>
303
+    </configuration>
304
+    <configuration name="PeopleTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
305
+      <module name="interfaces-1" />
306
+      <extension name="coverage">
307
+        <pattern>
308
+          <option name="PATTERN" value="io.zipcoder.interfaces.*" />
309
+          <option name="ENABLED" value="true" />
310
+        </pattern>
311
+      </extension>
312
+      <option name="PACKAGE_NAME" value="io.zipcoder.interfaces" />
313
+      <option name="MAIN_CLASS_NAME" value="io.zipcoder.interfaces.PeopleTest" />
314
+      <method v="2">
315
+        <option name="Make" enabled="true" />
316
+      </method>
317
+    </configuration>
318
+    <configuration name="PeopleTest.testRemoveById" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
319
+      <module name="interfaces-1" />
320
+      <extension name="coverage">
321
+        <pattern>
322
+          <option name="PATTERN" value="io.zipcoder.interfaces.*" />
323
+          <option name="ENABLED" value="true" />
324
+        </pattern>
325
+      </extension>
326
+      <option name="PACKAGE_NAME" value="io.zipcoder.interfaces" />
327
+      <option name="MAIN_CLASS_NAME" value="io.zipcoder.interfaces.PeopleTest" />
328
+      <option name="METHOD_NAME" value="testRemoveById" />
329
+      <option name="TEST_OBJECT" value="method" />
330
+      <method v="2">
331
+        <option name="Make" enabled="true" />
332
+      </method>
333
+    </configuration>
334
+    <configuration name="io.zipcoder.interfaces in interfaces-1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
335
+      <module name="interfaces-1" />
336
+      <extension name="coverage">
337
+        <pattern>
338
+          <option name="PATTERN" value="io.zipcoder.interfaces.*" />
339
+          <option name="ENABLED" value="true" />
340
+        </pattern>
341
+      </extension>
342
+      <option name="PACKAGE_NAME" value="io.zipcoder.interfaces" />
343
+      <option name="TEST_OBJECT" value="package" />
344
+      <method v="2">
345
+        <option name="Make" enabled="true" />
346
+      </method>
347
+    </configuration>
348
+    <list>
349
+      <item itemvalue="JUnit.InstructorTest" />
350
+      <item itemvalue="JUnit.InstructorTest.testInheritance" />
351
+      <item itemvalue="JUnit.PeopleTest.testRemoveById" />
352
+      <item itemvalue="JUnit.PeopleTest" />
353
+      <item itemvalue="JUnit.io.zipcoder.interfaces in interfaces-1" />
354
+    </list>
355
+    <recent_temporary>
356
+      <list>
357
+        <item itemvalue="JUnit.io.zipcoder.interfaces in interfaces-1" />
358
+        <item itemvalue="JUnit.PeopleTest" />
359
+        <item itemvalue="JUnit.PeopleTest.testRemoveById" />
360
+        <item itemvalue="JUnit.InstructorTest" />
361
+        <item itemvalue="JUnit.InstructorTest.testInheritance" />
362
+      </list>
363
+    </recent_temporary>
364
+  </component>
365
+  <component name="SvnConfiguration">
366
+    <configuration />
367
+  </component>
368
+  <component name="TaskManager">
369
+    <task active="true" id="Default" summary="Default task">
370
+      <changelist id="ed3eff7a-714a-4045-b2f1-74c5c00891cc" name="Default Changelist" comment="" />
371
+      <created>1541196064985</created>
372
+      <option name="number" value="Default" />
373
+      <option name="presentableId" value="Default" />
374
+      <updated>1541196064985</updated>
375
+      <workItem from="1541196066353" duration="7391000" />
376
+      <workItem from="1541273127624" duration="5174000" />
377
+      <workItem from="1541281796984" duration="10428000" />
378
+      <workItem from="1541423998896" duration="7735000" />
379
+      <workItem from="1541547873451" duration="424000" />
380
+      <workItem from="1541898737033" duration="3510000" />
381
+      <workItem from="1542069053882" duration="1556000" />
382
+      <workItem from="1542201468322" duration="244000" />
383
+      <workItem from="1542202006850" duration="5071000" />
384
+    </task>
385
+    <servers />
386
+  </component>
387
+  <component name="TestHistory">
388
+    <history-entry file="PeopleTest - 2018.11.12 at 19h 39m 33s.xml">
389
+      <configuration name="PeopleTest" configurationId="JUnit" />
390
+    </history-entry>
391
+    <history-entry file="PeopleTest - 2018.11.12 at 19h 39m 48s.xml">
392
+      <configuration name="PeopleTest" configurationId="JUnit" />
393
+    </history-entry>
394
+    <history-entry file="PeopleTest - 2018.11.12 at 19h 48m 32s.xml">
395
+      <configuration name="PeopleTest" configurationId="JUnit" />
396
+    </history-entry>
397
+    <history-entry file="PeopleTest - 2018.11.12 at 19h 51m 35s.xml">
398
+      <configuration name="PeopleTest" configurationId="JUnit" />
399
+    </history-entry>
400
+    <history-entry file="io_zipcoder_interfaces_in_interfaces-1 - 2018.11.12 at 19h 53m 29s.xml">
401
+      <configuration name="io.zipcoder.interfaces in interfaces-1" configurationId="JUnit" />
402
+    </history-entry>
403
+    <history-entry file="io_zipcoder_interfaces_in_interfaces-1 - 2018.11.14 at 08h 29m 14s.xml">
404
+      <configuration name="io.zipcoder.interfaces in interfaces-1" configurationId="JUnit" />
405
+    </history-entry>
406
+    <history-entry file="PeopleTest - 2018.11.14 at 08h 29m 27s.xml">
407
+      <configuration name="PeopleTest" configurationId="JUnit" />
408
+    </history-entry>
409
+    <history-entry file="PeopleTest - 2018.11.14 at 08h 30m 20s.xml">
410
+      <configuration name="PeopleTest" configurationId="JUnit" />
411
+    </history-entry>
412
+    <history-entry file="PeopleTest - 2018.11.14 at 12h 44m 33s.xml">
413
+      <configuration name="PeopleTest" configurationId="JUnit" />
414
+    </history-entry>
415
+    <history-entry file="io_zipcoder_interfaces_in_interfaces-1 - 2018.11.14 at 12h 45m 36s.xml">
416
+      <configuration name="io.zipcoder.interfaces in interfaces-1" configurationId="JUnit" />
417
+    </history-entry>
418
+  </component>
419
+  <component name="TimeTrackingManager">
420
+    <option name="totallyTimeSpent" value="41533000" />
421
+  </component>
422
+  <component name="ToolWindowManager">
423
+    <frame x="0" y="-1080" width="1920" height="1080" extended-state="0" />
424
+    <editor active="true" />
425
+    <layout>
426
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.11821086" />
427
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
428
+      <window_info id="Image Layers" order="2" />
429
+      <window_info id="Designer" order="3" />
430
+      <window_info id="UI Designer" order="4" />
431
+      <window_info id="Capture Tool" order="5" />
432
+      <window_info id="Favorites" order="6" side_tool="true" />
433
+      <window_info anchor="bottom" id="Message" order="0" />
434
+      <window_info anchor="bottom" id="Find" order="1" />
435
+      <window_info anchor="bottom" id="Run" order="2" weight="0.18217821" />
436
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
437
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
438
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
439
+      <window_info anchor="bottom" id="TODO" order="6" />
440
+      <window_info anchor="bottom" id="Version Control" order="7" show_stripe_button="false" />
441
+      <window_info anchor="bottom" id="Database Changes" order="8" show_stripe_button="false" />
442
+      <window_info anchor="bottom" id="Terminal" order="9" />
443
+      <window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
444
+      <window_info anchor="bottom" id="Messages" order="11" weight="0.32739726" />
445
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
446
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
447
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
448
+      <window_info anchor="right" id="Palette" order="3" />
449
+      <window_info anchor="right" id="Capture Analysis" order="4" />
450
+      <window_info anchor="right" id="Database" order="5" />
451
+      <window_info anchor="right" id="Theme Preview" order="6" />
452
+      <window_info anchor="right" id="Palette&#9;" order="7" />
453
+      <window_info anchor="right" id="Maven Projects" order="8" />
454
+      <window_info active="true" anchor="right" id="Coverage" order="9" side_tool="true" visible="true" weight="0.32960597" />
455
+    </layout>
456
+    <layout-to-restore>
457
+      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.17944622" />
458
+      <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
459
+      <window_info id="Image Layers" order="2" />
460
+      <window_info id="Designer" order="3" />
461
+      <window_info id="UI Designer" order="4" />
462
+      <window_info id="Capture Tool" order="5" />
463
+      <window_info id="Favorites" order="6" side_tool="true" />
464
+      <window_info anchor="bottom" id="Message" order="0" />
465
+      <window_info anchor="bottom" id="Find" order="1" />
466
+      <window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.25247526" />
467
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
468
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
469
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
470
+      <window_info anchor="bottom" id="TODO" order="6" />
471
+      <window_info anchor="bottom" id="Version Control" order="7" show_stripe_button="false" />
472
+      <window_info anchor="bottom" id="Database Changes" order="8" show_stripe_button="false" />
473
+      <window_info anchor="bottom" id="Terminal" order="9" />
474
+      <window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
475
+      <window_info anchor="bottom" id="Messages" order="11" weight="0.32871288" />
476
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
477
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
478
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
479
+      <window_info anchor="right" id="Palette" order="3" />
480
+      <window_info anchor="right" id="Capture Analysis" order="4" />
481
+      <window_info anchor="right" id="Database" order="5" />
482
+      <window_info anchor="right" id="Theme Preview" order="6" />
483
+      <window_info anchor="right" id="Palette&#9;" order="7" />
484
+      <window_info anchor="right" id="Maven Projects" order="8" />
485
+      <window_info active="true" anchor="right" id="Coverage" order="9" side_tool="true" visible="true" weight="0.32960597" />
486
+    </layout-to-restore>
487
+  </component>
488
+  <component name="TypeScriptGeneratedFilesManager">
489
+    <option name="version" value="1" />
490
+  </component>
491
+  <component name="VcsContentAnnotationSettings">
492
+    <option name="myLimit" value="2678400000" />
493
+  </component>
494
+  <component name="editorHistoryManager">
495
+    <entry file="uml://JAVA/io.zipcoder.interfaces">
496
+      <provider selected="true" editor-type-id="UmlEditorProvider">
497
+        <state>
498
+          <ID>JAVA</ID>
499
+          <OriginalElement>io.zipcoder.interfaces</OriginalElement>
500
+          <nodes>
501
+            <node x="" y="">io.zipcoder.interfaces.Learner</node>
502
+            <node x="" y="">io.zipcoder.interfaces.Person</node>
503
+            <node x="" y="">io.zipcoder.interfaces.StudentTest</node>
504
+            <node x="" y="">io.zipcoder.interfaces.Teacher</node>
505
+            <node x="" y="">io.zipcoder.interfaces.TestPerson</node>
506
+            <node x="" y="">io.zipcoder.interfaces.InstructorTest</node>
507
+            <node x="" y="">io.zipcoder.interfaces.Student</node>
508
+            <node x="" y="">io.zipcoder.interfaces.Instructor</node>
509
+          </nodes>
510
+          <notes />
511
+          <edges />
512
+          <settings layout="Hierarchic Group" zoom="1.0" x="-383.0" y="55.0" />
513
+          <SelectedNodes />
514
+          <Categories />
515
+          <SCOPE>All</SCOPE>
516
+          <VISIBILITY>private</VISIBILITY>
517
+        </state>
518
+      </provider>
519
+    </entry>
520
+    <entry file="uml://JavaScript-modules-diagram//Users/jacobandersen/LABS/CR-MacroLabs-OOP-InstructorStudentClassroom/src/main/java/io/zipcoder/interfaces">
521
+      <provider selected="true" editor-type-id="UmlEditorProvider">
522
+        <state>
523
+          <ID>JavaScript-modules-diagram</ID>
524
+          <OriginalElement>$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces</OriginalElement>
525
+          <nodes />
526
+          <notes />
527
+          <edges />
528
+          <settings layout="Hierarchic Group" zoom="1.0" x="939.0" y="313.0" />
529
+          <SelectedNodes />
530
+          <Categories>
531
+            <Category>All</Category>
532
+          </Categories>
533
+          <SCOPE>All</SCOPE>
534
+          <VISIBILITY>Details</VISIBILITY>
535
+        </state>
536
+      </provider>
537
+    </entry>
538
+    <entry file="file://$PROJECT_DIR$/pom.xml">
539
+      <provider selected="true" editor-type-id="text-editor" />
540
+    </entry>
541
+    <entry file="file://$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/People.java" />
542
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Learner.java">
543
+      <provider selected="true" editor-type-id="text-editor">
544
+        <state relative-caret-position="60">
545
+          <caret line="4" column="4" selection-start-line="4" selection-start-column="4" selection-end-line="4" selection-end-column="4" />
546
+        </state>
547
+      </provider>
548
+    </entry>
549
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Instructor.java">
550
+      <provider selected="true" editor-type-id="text-editor">
551
+        <state relative-caret-position="90">
552
+          <caret line="12" selection-start-line="12" selection-end-line="12" />
553
+          <folding>
554
+            <element signature="e#128#129#0" expanded="true" />
555
+            <element signature="e#153#154#0" expanded="true" />
556
+          </folding>
557
+        </state>
558
+      </provider>
559
+    </entry>
560
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Teacher.java">
561
+      <provider selected="true" editor-type-id="text-editor">
562
+        <state relative-caret-position="75">
563
+          <caret line="5" column="4" selection-start-line="5" selection-start-column="4" selection-end-line="5" selection-end-column="4" />
564
+        </state>
565
+      </provider>
566
+    </entry>
567
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/People.java">
568
+      <provider selected="true" editor-type-id="text-editor">
569
+        <state relative-caret-position="630">
570
+          <caret line="50" column="30" selection-start-line="50" selection-start-column="30" selection-end-line="50" selection-end-column="30" />
571
+        </state>
572
+      </provider>
573
+    </entry>
574
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Student.java">
575
+      <provider selected="true" editor-type-id="text-editor">
576
+        <state relative-caret-position="60">
577
+          <caret line="4" column="38" selection-start-line="4" selection-start-column="38" selection-end-line="4" selection-end-column="38" />
578
+          <folding>
579
+            <element signature="e#136#137#0" expanded="true" />
580
+            <element signature="e#153#154#0" expanded="true" />
581
+          </folding>
582
+        </state>
583
+      </provider>
584
+    </entry>
585
+    <entry file="file://$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/TestPerson.java">
586
+      <provider selected="true" editor-type-id="text-editor">
587
+        <state relative-caret-position="300">
588
+          <caret line="22" column="41" selection-start-line="22" selection-start-column="41" selection-end-line="22" selection-end-column="41" />
589
+        </state>
590
+      </provider>
591
+    </entry>
592
+    <entry file="file://$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/PeopleTest.java">
593
+      <provider selected="true" editor-type-id="text-editor">
594
+        <state relative-caret-position="169">
595
+          <caret line="23" selection-start-line="23" selection-end-line="23" />
596
+        </state>
597
+      </provider>
598
+    </entry>
599
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Person.java">
600
+      <provider selected="true" editor-type-id="text-editor">
601
+        <state relative-caret-position="150">
602
+          <caret line="10" column="5" selection-start-line="10" selection-start-column="5" selection-end-line="10" selection-end-column="5" />
603
+          <folding>
604
+            <element signature="e#140#141#0" expanded="true" />
605
+            <element signature="e#159#160#0" expanded="true" />
606
+            <element signature="e#324#325#0" expanded="true" />
607
+            <element signature="e#348#349#0" expanded="true" />
608
+            <element signature="e#383#384#0" expanded="true" />
609
+            <element signature="e#410#411#0" expanded="true" />
610
+          </folding>
611
+        </state>
612
+      </provider>
613
+    </entry>
614
+    <entry file="file://$USER_HOME$/Downloads/-.java">
615
+      <provider selected="true" editor-type-id="text-editor" />
616
+    </entry>
617
+    <entry file="file://$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/StudentTest.java">
618
+      <provider selected="true" editor-type-id="text-editor">
619
+        <state relative-caret-position="345">
620
+          <caret line="23" column="49" selection-start-line="23" selection-start-column="49" selection-end-line="23" selection-end-column="49" />
621
+          <folding>
622
+            <element signature="imports" expanded="true" />
623
+          </folding>
624
+        </state>
625
+      </provider>
626
+    </entry>
627
+    <entry file="file://$PROJECT_DIR$/src/test/java/io/zipcoder/interfaces/InstructorTest.java">
628
+      <provider selected="true" editor-type-id="text-editor">
629
+        <state relative-caret-position="413">
630
+          <caret line="36" column="47" selection-start-line="36" selection-start-column="47" selection-end-line="36" selection-end-column="47" />
631
+          <folding>
632
+            <element signature="imports" expanded="true" />
633
+          </folding>
634
+        </state>
635
+      </provider>
636
+    </entry>
637
+    <entry file="file://$PROJECT_DIR$/src/main/java/io/zipcoder/interfaces/Students.java">
638
+      <provider selected="true" editor-type-id="text-editor">
639
+        <state relative-caret-position="705">
640
+          <caret line="47" lean-forward="true" selection-start-line="47" selection-end-line="47" />
641
+          <folding>
642
+            <element signature="e#220#221#0" expanded="true" />
643
+            <element signature="e#251#252#0" expanded="true" />
644
+          </folding>
645
+        </state>
646
+      </provider>
647
+    </entry>
648
+    <entry file="file://$PROJECT_DIR$/src/test/java/TestStudents.java">
649
+      <provider selected="true" editor-type-id="text-editor">
650
+        <state relative-caret-position="90">
651
+          <caret line="6" column="8" selection-start-line="6" selection-start-column="8" selection-end-line="6" selection-end-column="8" />
652
+        </state>
653
+      </provider>
654
+    </entry>
655
+  </component>
656
+  <component name="masterDetails">
657
+    <states>
658
+      <state key="ArtifactsStructureConfigurable.UI">
659
+        <settings>
660
+          <artifact-editor />
661
+          <splitter-proportions>
662
+            <option name="proportions">
663
+              <list>
664
+                <option value="0.2" />
665
+              </list>
666
+            </option>
667
+          </splitter-proportions>
668
+        </settings>
669
+      </state>
670
+      <state key="FacetStructureConfigurable.UI">
671
+        <settings>
672
+          <last-edited>No facets are configured</last-edited>
673
+          <splitter-proportions>
674
+            <option name="proportions">
675
+              <list>
676
+                <option value="0.2" />
677
+              </list>
678
+            </option>
679
+          </splitter-proportions>
680
+        </settings>
681
+      </state>
682
+      <state key="GlobalLibrariesConfigurable.UI">
683
+        <settings>
684
+          <splitter-proportions>
685
+            <option name="proportions">
686
+              <list>
687
+                <option value="0.2" />
688
+              </list>
689
+            </option>
690
+          </splitter-proportions>
691
+        </settings>
692
+      </state>
693
+      <state key="JdkListConfigurable.UI">
694
+        <settings>
695
+          <last-edited>1.8</last-edited>
696
+          <splitter-proportions>
697
+            <option name="proportions">
698
+              <list>
699
+                <option value="0.2" />
700
+              </list>
701
+            </option>
702
+          </splitter-proportions>
703
+        </settings>
704
+      </state>
705
+      <state key="ModuleStructureConfigurable.UI">
706
+        <settings>
707
+          <last-edited>interfaces-1</last-edited>
708
+          <splitter-proportions>
709
+            <option name="proportions">
710
+              <list>
711
+                <option value="0.2" />
712
+                <option value="0.6" />
713
+              </list>
714
+            </option>
715
+          </splitter-proportions>
716
+        </settings>
717
+      </state>
718
+      <state key="ProjectLibrariesConfigurable.UI">
719
+        <settings>
720
+          <last-edited>Maven: junit:junit:4.12</last-edited>
721
+          <splitter-proportions>
722
+            <option name="proportions">
723
+              <list>
724
+                <option value="0.2" />
725
+              </list>
726
+            </option>
727
+          </splitter-proportions>
728
+        </settings>
729
+      </state>
730
+    </states>
731
+  </component>
732
+</project>

+ 16
- 0
interfaces-1.iml 파일 보기

@@ -0,0 +1,16 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
4
+    <output url="file://$MODULE_DIR$/target/classes" />
5
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
6
+    <content url="file://$MODULE_DIR$">
7
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
8
+      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
9
+      <excludeFolder url="file://$MODULE_DIR$/target" />
10
+    </content>
11
+    <orderEntry type="inheritedJdk" />
12
+    <orderEntry type="sourceFolder" forTests="false" />
13
+    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
14
+    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
15
+  </component>
16
+</module>

+ 12
- 0
pom.xml 파일 보기

@@ -5,6 +5,18 @@
5 5
   <groupId>io.zipcoder</groupId>
6 6
   <artifactId>interfaces-1</artifactId>
7 7
   <version>0.0.1-SNAPSHOT</version>
8
+  <build>
9
+    <plugins>
10
+      <plugin>
11
+        <groupId>org.apache.maven.plugins</groupId>
12
+        <artifactId>maven-compiler-plugin</artifactId>
13
+        <configuration>
14
+          <source>7</source>
15
+          <target>7</target>
16
+        </configuration>
17
+      </plugin>
18
+    </plugins>
19
+  </build>
8 20
   <packaging>jar</packaging>
9 21
 
10 22
   <name>interfaces-1</name>

+ 21
- 0
src/main/java/io/zipcoder/interfaces/Instructor.java 파일 보기

@@ -0,0 +1,21 @@
1
+package io.zipcoder.interfaces;
2
+
3
+public class Instructor extends Person implements Teacher {
4
+    public Instructor(long id)
5
+    {
6
+        super(id);
7
+    }
8
+
9
+    public void teach (Learner learner, double numberOfHours)
10
+    {
11
+        learner.learn(numberOfHours);
12
+    }
13
+
14
+    public void lecture (Learner[] learners, double numberOfHours)
15
+    {
16
+        for (Learner v : learners) {
17
+            v.learn(numberOfHours/learners.length);
18
+        }
19
+    }
20
+
21
+}

+ 7
- 0
src/main/java/io/zipcoder/interfaces/Learner.java 파일 보기

@@ -0,0 +1,7 @@
1
+package io.zipcoder.interfaces;
2
+
3
+public interface Learner {
4
+
5
+    void learn(double numberOfHours);
6
+}
7
+

+ 62
- 0
src/main/java/io/zipcoder/interfaces/People.java 파일 보기

@@ -0,0 +1,62 @@
1
+package io.zipcoder.interfaces;
2
+
3
+import java.lang.reflect.Array;
4
+import java.util.ArrayList;
5
+import java.util.Objects;
6
+
7
+public class People {
8
+
9
+    ArrayList<Person> personList = new ArrayList<Person>();
10
+
11
+    public void add(Person p)
12
+    {
13
+        this.personList.add(p);
14
+    }
15
+
16
+    public int getCount()
17
+    {
18
+        return this.personList.size();
19
+    }
20
+
21
+    public void remove(Person person)
22
+    {
23
+
24
+        this.personList.remove(person);
25
+    }
26
+
27
+    public void remove(long id)
28
+    {
29
+    for (int i=0;i<personList.size();i++)
30
+    {
31
+    personList.remove(findById(id));
32
+    }
33
+
34
+
35
+    }
36
+
37
+    public Person findById(long id) {
38
+        for (int i=0; i<personList.size();i++) {
39
+            if (this.personList.get(i).getId() == id) {
40
+                return this.personList.get(i);
41
+            }
42
+        }
43
+        return null;
44
+    }
45
+
46
+    public Person[] getArray()
47
+    {
48
+        Person[] arr = new Person[personList.size()];
49
+        for (int i=0;i<personList.size();i++)
50
+        {
51
+            arr[i]=personList.get(i);
52
+        }
53
+        return arr;
54
+    }
55
+
56
+    public void removeAll()
57
+    {
58
+        personList.clear();
59
+    }
60
+
61
+}
62
+

+ 29
- 0
src/main/java/io/zipcoder/interfaces/Person.java 파일 보기

@@ -2,4 +2,33 @@ package io.zipcoder.interfaces;
2 2
 
3 3
 public class Person {
4 4
 
5
+    private final long id;
6
+    private String name;
7
+
8
+    public Person(long id)
9
+    {
10
+        this.id=id;
11
+    }
12
+
13
+    public Person (long id, String name)
14
+    {
15
+        this.id=id;
16
+        this.name=name;
17
+    }
18
+
19
+    public long getId()
20
+    {
21
+       return id;
22
+    }
23
+
24
+    public String getName()
25
+    {
26
+        return name;
27
+    }
28
+
29
+    public void setName(String name)
30
+    {
31
+        this.name = name;
32
+
33
+    }
5 34
 }

+ 23
- 0
src/main/java/io/zipcoder/interfaces/Student.java 파일 보기

@@ -0,0 +1,23 @@
1
+package io.zipcoder.interfaces;
2
+
3
+public class Student extends Person implements Learner {
4
+
5
+    public Student(long id,String name)
6
+    {
7
+        super(id);
8
+    }
9
+    double totalStudyTime;
10
+
11
+    public void learn(double numberofhours)
12
+    {
13
+        this.totalStudyTime+=numberofhours;
14
+    }
15
+
16
+    public double getTotalStudyTime()
17
+    {
18
+        return this.totalStudyTime;
19
+    }
20
+
21
+
22
+
23
+}

+ 53
- 0
src/main/java/io/zipcoder/interfaces/Students.java 파일 보기

@@ -0,0 +1,53 @@
1
+package io.zipcoder.interfaces;
2
+
3
+public final class Students extends People {
4
+    private final static Students INSTANCE = new Students();
5
+
6
+    private Students() {
7
+        personList.add(new Student(1, "Ned Redmond"));
8
+        personList.add(new Student(2, "Seth Abrams"));
9
+        personList.add(new Student(3, "Akeem Cherry"));
10
+        personList.add(new Student(4, "Whitney Martinez"));
11
+        personList.add(new Student(5, "Nira Parikh"));
12
+        personList.add(new Student(6, "Connor Dunnigan"));
13
+        personList.add(new Student(7, "Christian Sheridan"));
14
+        personList.add(new Student(8, "Curtis Cook"));
15
+        personList.add(new Student(9, "Nuridalia Hernandez"));
16
+        personList.add(new Student(10, "Brandon DeFrancis"));
17
+        personList.add(new Student(11, "De'Jon Johnson"));
18
+        personList.add(new Student(12, "Demetrius Murray"));
19
+        personList.add(new Student(13, "Elliott Stansbury"));
20
+        personList.add(new Student(14, "Nathan Hall"));
21
+        personList.add(new Student(15, "Jae Joson"));
22
+        personList.add(new Student(16, "Jacob Anderson"));
23
+        personList.add(new Student(17, "Jose Bedolla"));
24
+        personList.add(new Student(18, "Jenn Chao"));
25
+        personList.add(new Student(19, "Jennifer Tinkler"));
26
+        personList.add(new Student(20, "Jonathan Hinds"));
27
+        personList.add(new Student(21, "Jay Samuels"));
28
+        personList.add(new Student(22, "Jevit Tith"));
29
+        personList.add(new Student(23, "Lauren Green"));
30
+        personList.add(new Student(24, "Kate Moore"));
31
+        personList.add(new Student(25, "Michelle DiMarino"));
32
+        personList.add(new Student(26, "Maggie Pierse"));
33
+        personList.add(new Student(27, "Nick Satinover"));
34
+        personList.add(new Student(28, "Chaitali Patel"));
35
+        personList.add(new Student(29, "Yesoda Sanka"));
36
+        personList.add(new Student(30, "Saurav Kamath"));
37
+        personList.add(new Student(31, "Sam Bhutani"));
38
+        personList.add(new Student(32, "Soujanya Buragapu"));
39
+        personList.add(new Student(33, "Steffon Williams"));
40
+        personList.add(new Student(34, "Zavon Malone"));
41
+        personList.add(new Student(35, "Thuy Kong"));
42
+        personList.add(new Student(36, "Thulasi Puppala"));
43
+        personList.add(new Student(37, "Trinh Tong"));
44
+        personList.add(new Student(38, "William Brown"));
45
+        personList.add(new Student(39, "Xzavia Cuello"));
46
+    }
47
+
48
+
49
+    public static Students getInstance() {
50
+        return INSTANCE;
51
+    }
52
+}
53
+

+ 8
- 0
src/main/java/io/zipcoder/interfaces/Teacher.java 파일 보기

@@ -0,0 +1,8 @@
1
+package io.zipcoder.interfaces;
2
+
3
+public interface Teacher
4
+{
5
+     void teach (Learner learner, double numberOfHours);
6
+     void lecture (Learner[] learners, double numberOfHours);
7
+}
8
+

+ 11
- 0
src/test/java/TestStudents.java 파일 보기

@@ -0,0 +1,11 @@
1
+import org.junit.Test;
2
+
3
+public class TestStudents
4
+{
5
+    public void validateCohortTest()
6
+    {
7
+
8
+    }
9
+
10
+    @Test
11
+}

+ 48
- 0
src/test/java/io/zipcoder/interfaces/InstructorTest.java 파일 보기

@@ -0,0 +1,48 @@
1
+package io.zipcoder.interfaces;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+public class InstructorTest {
7
+    @Test
8
+    public void testImplementation()
9
+    {
10
+        Instructor instructor = new Instructor(1);
11
+        Assert.assertTrue(instructor instanceof Teacher);
12
+    }
13
+    @Test
14
+    public void testInheritance()
15
+
16
+    {
17
+        Instructor instructor = new Instructor(1);
18
+        Assert.assertTrue(instructor instanceof Person);
19
+    }
20
+    @Test
21
+    public void testTeach()
22
+    {
23
+        Instructor instructor = new Instructor(1);
24
+        Student student = new Student(1,"johnny");
25
+
26
+        instructor.teach(student,22);
27
+        double expected = 22;
28
+        double actual = student.getTotalStudyTime();
29
+        Assert.assertEquals(expected,actual,0.01);
30
+    }
31
+    @Test
32
+    public void testLecture()
33
+    {
34
+        Instructor instructor = new Instructor(1);
35
+        Student student1 = new Student(1,"george");
36
+        Student student2 = new Student(2,"peter");
37
+        Student student3 = new Student( 3,"eric");
38
+
39
+        Student studArr[] = {student1,student2,student3};
40
+
41
+        instructor.lecture(studArr,100);
42
+
43
+        double expected = 33.33;
44
+        double actual = student1.getTotalStudyTime();
45
+        Assert.assertEquals(expected,actual,0.01);
46
+    }
47
+
48
+}

+ 71
- 0
src/test/java/io/zipcoder/interfaces/PeopleTest.java 파일 보기

@@ -0,0 +1,71 @@
1
+package io.zipcoder.interfaces;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+import java.util.ArrayList;
7
+
8
+public class PeopleTest {
9
+    @Test
10
+    public void testAdd()
11
+    {
12
+        People peoplelist = new People();
13
+        Person person1 = new Person(1);
14
+        Person person2 = new Person(2);
15
+        peoplelist.add(person1);
16
+        peoplelist.add(person2);
17
+
18
+        int expected = 2;
19
+        int actual = peoplelist.getCount();
20
+
21
+        Assert.assertEquals(expected,actual);
22
+
23
+    }
24
+
25
+
26
+    @Test
27
+    public void testRemoveAll()
28
+    {
29
+        People peoplelist = new People();
30
+        Person person1 = new Person(1);
31
+        Person person2 = new Person(2);
32
+        peoplelist.add(person1);
33
+        peoplelist.add(person2);
34
+        peoplelist.removeAll();
35
+        int expected = 0;
36
+        int actual = peoplelist.getCount();
37
+
38
+        Assert.assertEquals(expected, actual);
39
+    }
40
+
41
+    @Test
42
+    public void testRemoveByPerson() {
43
+
44
+        People peoplelist = new People();
45
+        Person person1 = new Person(1);
46
+        Person person2 = new Person(2);
47
+        peoplelist.add(person1);
48
+        peoplelist.add(person2);
49
+        peoplelist.remove(person1);
50
+        int expected = 1;
51
+        int actual = peoplelist.getCount();
52
+
53
+        Assert.assertEquals(expected, actual);
54
+    }
55
+        @Test
56
+        public void testFindById()
57
+    {
58
+        People peoplelist = new People();
59
+        Person person1 = new Person(1);
60
+        Person person2 = new Person(2);
61
+        peoplelist.add(person1);
62
+        peoplelist.add(person2);
63
+        Person expected = person1;
64
+        Person actual = peoplelist.findById(1);
65
+        Assert.assertEquals(expected,actual);
66
+
67
+}
68
+}
69
+
70
+
71
+

+ 31
- 0
src/test/java/io/zipcoder/interfaces/StudentTest.java 파일 보기

@@ -0,0 +1,31 @@
1
+package io.zipcoder.interfaces;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+public class StudentTest {
7
+    @Test
8
+    public void testImplementation()
9
+    {
10
+        Student student = new Student(12345,"eric");
11
+
12
+    Assert.assertTrue(student instanceof Learner);
13
+    }
14
+@Test
15
+    public void testInheritance()
16
+    {
17
+        Student student = new Student(12345,"eric");
18
+
19
+        Assert.assertTrue(student instanceof Person);
20
+    }
21
+@Test
22
+    public void testLearn()
23
+    {
24
+        Student student = new Student(12345,"eric");
25
+        student.learn(100);
26
+        double actual = student.getTotalStudyTime();
27
+        Assert.assertEquals(100,actual,0.01);
28
+    }
29
+
30
+
31
+}

+ 26
- 0
src/test/java/io/zipcoder/interfaces/TestPerson.java 파일 보기

@@ -1,5 +1,31 @@
1 1
 package io.zipcoder.interfaces;
2 2
 
3
+import javafx.beans.binding.When;
4
+import org.junit.Assert;
5
+import org.junit.Test;
6
+
3 7
 public class TestPerson {
8
+    @Test
9
+    public void testConstructor()
10
+    {
11
+        Person testperson = new Person(12345);
12
+
13
+        //GIVEN
14
+        long actual=testperson.getId();
15
+        long expected=12345;
16
+        //WHEN
17
+        Assert.assertEquals(expected,actual);
18
+        //THEN
19
+    }
20
+    @Test
21
+    public void testSetAndGetName(){
22
+
23
+        Person person = new Person(1,"jan");
24
+
25
+        String expectedName="johnny";
26
+        person.setName(expectedName);
27
+        String actualName=person.getName();
28
+        Assert.assertEquals(expectedName,actualName);
29
+    }
4 30
 
5 31
 }