아하
생활

생활꿀팁

위용있는나방107
위용있는나방107

JAVA 문제 질문 받아주실 수 있나요???

public class Student {

public String name;

public int grade;

public Student( ) {

System.out.println("Student 생성자 호출");

}

public String getName( ) {

return name;

}

public int getGrade( ) {

return grade;

}

public String getStudInfo( ) {

System.out.println("Student 클래스의 getStudInfo( ) 메서드 호출");

return "이름은 : " + name + " ,학년은 " +grade;

}

public String getTeacher( ) {

return "김길동 선생님";

}

}

public class Elementary extends Student {

private int point;

public Elementary(String name, int grade, int point) {

System.out.println("Elementary 생성자 호출");

super.name=name;

super.grade=grade;

this.point=point;

}

public String getClassTeacher( ) {

return "박길순 선생님";

}

}

Q1 : 요러한 슈퍼클래스 Student와 서브클래스 Elementary를 짰는데요! 추상클래스와 추상메소드를 공부중인데 추상클래스와 추상메소드를 이용해서 Student 클래스를 바꾸면 어디를 어떻게 바꿔야하나요?

Q2 : 그리고 Student 클래스를 추상클래스로 바꾼다고 하면 서브클래스인 Elementary도 바꾸어주어야 하잖아요! 어떻게 바꿔줘야할까요?ㅠ

public class MyStudent {

private String name;

private int grade;

public MyStudent(String name, int grade) {

this.name = name;

this.grade = grade;

}

public String getName( ) {

return name;

}

public int getGrade( ) {

return grade;

}

public boolean equals(Object o) {

MyStudent s=(MyStudent)o;

if(name.equals(s.name) && (grade==s.grade))

return true;

else return false;

}

}

Q3 : 이 코드에서 equals() 메소드의 의미를 잘 모르겠습니다 ㅠㅠ

3개의 답변이 있어요!