Skip to content
3 changes: 3 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .idea/.name

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/encodings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions .idea/jarRepositories.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__junit_junit_4_13_1.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

124 changes: 124 additions & 0 deletions .idea/uiDesigner.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions interfaces-1.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: junit:junit:4.13.1" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
</component>
</module>
6 changes: 6 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,11 @@
<version>3.8.1</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
</dependency>
</dependencies>
</project>
26 changes: 26 additions & 0 deletions src/main/java/io/zipcoder/interfaces/ClassRoom.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package io.zipcoder.interfaces;

import java.util.ArrayList;
import java.util.HashMap;

public class ClassRoom {
private HashMap<String, Person> roster;

public ClassRoom(){
roster = new HashMap<String, Person>();
}
public HashMap<String,Person> getRoster(){
ArrayList<Instructor> instructors = ZipCodeWilmingtonClass.getInstructors();
for (int i = 0; i < instructors.size(); i++) {
Instructor x = instructors.get(i);
roster.put(x.getName(), x);
}
ArrayList<Student> students = TechConnect.getStudents();
for (int i = 0; i < students.size(); i++) {
Student y = students.get(i);
roster.put(y.getName(), y);
}
return roster;
}

}
25 changes: 25 additions & 0 deletions src/main/java/io/zipcoder/interfaces/Instructor.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package io.zipcoder.interfaces;

public class Instructor extends Person implements Teacher {

public Instructor(String name) {
super(name);
}

public void teach(Student student, double numberOfHours) {
student.learn(numberOfHours);

}

public void lecture(Student[] students, double numberOfHours) {
double numberOfHoursPerStudent = numberOfHours / students.length;
for (int i = 0; i < students.length; i++) {
students[i].learn(numberOfHoursPerStudent);

}

}



}
5 changes: 5 additions & 0 deletions src/main/java/io/zipcoder/interfaces/Learner.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package io.zipcoder.interfaces;

public interface Learner {
public void learn(double numberOfHours);
}
17 changes: 17 additions & 0 deletions src/main/java/io/zipcoder/interfaces/Person.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,21 @@

public class Person {

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

String name;

public Person(String name)
{
this.name=name;
}



}
21 changes: 21 additions & 0 deletions src/main/java/io/zipcoder/interfaces/Student.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package io.zipcoder.interfaces;

public class Student extends Person implements Learner{


double totalStudyTime;
public Student(String name) {
super(name);
}

public void learn(double numberOfHours) {
totalStudyTime+=numberOfHours;

}

public double getTotalStudyTime() {
return totalStudyTime;
}


}
6 changes: 6 additions & 0 deletions src/main/java/io/zipcoder/interfaces/Teacher.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package io.zipcoder.interfaces;

public interface Teacher {
public void teach(Student student , double numberOfHours);
public void lecture(Student[] students , double numberOfHours);
}
Loading