클래스(상속)관련 문제
봄바람
[코드6-1]은 구현되지 않은 상위 클래스의 메서드를 하위 클래스에서 오바리이딩해서 사용하는 예를 보여주고잇다.
하지만 [코드 6-10]은 컴파일하여 실행할 수 없다. 에러가 발생하는 곳을 찾아 수정하고 그 이유를 설명하라.
이 문제 어떻게 풀어야 하는걸까요..
두세시간을 머리 굴려도 답이 안나오는듯...교수님은 메인쪽에 어쩌구 하시는거 같던데...자바 초보 질문할데 없어
염치 불구하고 올립니다..
class SuperClass {
protected int score[];
public SuperClass(int score[]) {
this.score = score;
}
protected int[] sort() {
return score;
}
}
class SubClass extends SuperClass {
public SubClass(int score[]) {
super(score);
}
protected int[] sort() {
for(int index01 = score.length-1; index01 0; index01--) {
for(int index02 = 1; index02 = index01; index02++) {
if(score[index02-1] score[index02]) {
int temp = score[index02-1];
score[index02-1] = score[index02];
score[index02] = temp;
}
}
}
return score;
}
public String result() {
String str = ;
for(int index=0; index score.length; index++) {
str = str + score[index]+ ;
}
return str;
}
}
public class Exam0601 {
public static void main(String args[]) {
int score[] = { 99, 23, 57, 83, 59, 77};
SuperClass obj = new SubClass(score);
score = obj.sort();
System.out.println(정렬 결과를 배열로 반환받아 출력);
for(int index=0; index score.length; index++) {
System.out.print(score[index]+ );
}
System.out.println(\n정렬 결과를 문자열로 반환받아 출력);
System.out.println(obj.result());
}
}
-
벼리 2024-10-20
음... 아무도 답변을 안해주시네요...
간단히 말씀드리겠습니다. 밑에서 세번째 obj.result()에서 에러가 납니다.
obj를 선언할때 보면 상위클래스(SuperClass)로 선언했네요.
때문에 하위클래스(SubClass)에 선언된 클래스의 메소드를 사용할 수 없습니다. -
바로찬글 2024-10-20
질문은 질문란에 올려주세요. 문제은행은 출제자가 답을 알고 올리는 거구요. 질문/답변으로 이동시킵니다.