diff --git a/Human.java b/Human.java new file mode 100644 index 0000000..0de3674 --- /dev/null +++ b/Human.java @@ -0,0 +1,20 @@ +public class Human { + private String fullName; + final String staticPrintOutput = "this function should always print this string in all subclasses"; + + public String getFullName() { + return fullName; + } + + public void setFullName(String fullName) { + this.fullName = fullName; + } + + public void sayMyName() { + System.out.println("im a human!"); + } + + public String staticPrint() { + return staticPrintOutput; + } +} diff --git a/Main.java b/Main.java new file mode 100644 index 0000000..d2fa2bb --- /dev/null +++ b/Main.java @@ -0,0 +1,21 @@ +//TIP To Run code, press or +// click the icon in the gutter. +public class Main { + public static void main(String[] args) { + Human student = new Student("Arian"); + Human professor = new Professor("Ahmadi","idk"); + + student.sayMyName(); // Q7 + System.out.println("-------------"); + professor.sayMyName(); // Q8 + + System.out.println("-------------"); + + if (student instanceof Human) { //Q6 + System.out.println("student is instance of human"); + } + if (professor instanceof Human) { + System.out.println("professor is instance of human"); + } + } +} \ No newline at end of file diff --git a/Professor.java b/Professor.java new file mode 100644 index 0000000..18adccd --- /dev/null +++ b/Professor.java @@ -0,0 +1,35 @@ +public class Professor extends Human { + private String professorFaculty; + private int numberOfCourse; + private String professorSpecialty; + + Professor(String name,String faculty) { + setFullName(name); + setProfessorFaculty(faculty); + } + + @Override + public void sayMyName() { + System.out.println("Im "+ getFullName()+"\nand my faculty is "+ professorFaculty); + } + + public void setProfessorFaculty(String professorFaculty) { + this.professorFaculty = professorFaculty; + } + public void setNumberOfCourse(int numberOfCourse) { + this.numberOfCourse = numberOfCourse; + } + public void setProfessorSpecialty(String professorSpecialty) { + this.professorSpecialty = professorSpecialty; + } + + public String getProfessorFaculty() { + return professorFaculty; + } + public int getNumberOfCourse() { + return numberOfCourse; + } + public String getProfessorSpecialty() { + return professorSpecialty; + } +} diff --git a/Q9.pdf b/Q9.pdf new file mode 100644 index 0000000..186cf5b Binary files /dev/null and b/Q9.pdf differ diff --git a/Student.java b/Student.java new file mode 100644 index 0000000..d30dad8 --- /dev/null +++ b/Student.java @@ -0,0 +1,34 @@ +public class Student extends Human { + private int studentNumber; + private String majorName; + private String universityName; + + Student(String name) { + setFullName(name); + } + + @Override + public void sayMyName() { + System.out.println("Im "+ getFullName()); + } + + public void setStudentNumber(int studentNumber) { + this.studentNumber = studentNumber; + } + public void setMajorName(String majorName) { + this.majorName = majorName; + } + public void setUniversityName(String universityName) { + this.universityName = universityName; + } + + public int getStudentNumber() { + return studentNumber; + } + public String getMajorName() { + return majorName; + } + public String getUniversityName() { + return universityName; + } +}