Skip to content

Exercise #12

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions Human.java
Original file line number Diff line number Diff line change
@@ -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;
}
}
21 changes: 21 additions & 0 deletions Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> 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");
}
}
}
35 changes: 35 additions & 0 deletions Professor.java
Original file line number Diff line number Diff line change
@@ -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;
}
}
Binary file added Q9.pdf
Binary file not shown.
34 changes: 34 additions & 0 deletions Student.java
Original file line number Diff line number Diff line change
@@ -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;
}
}