-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
퀴즈 7번 질문있습니다.
23.03.17 19:14 작성 23.03.17 19:16 수정 조회수 351
0
안녕하세요. 선생님 강의 퀴즈 7번을 풀다가 에러가 나서 질문 드립니다.
다형성을 이용해서 클래스를 배열에 담는 과정에서 에러가 발생하는데요. 소스코드를 선생님과 동일하게 쳐도 non-static variable this cannot be referenced from a static context 에러가 뜹니다..
구글링을 통해 해결해보려고 했으나 각 클래스에 static 을 명시해줘야 한다고 해서 해보니까 스택오버플롤우 에러가 뜨네요 ㅜㅜ
답변을 작성해보세요.
1
나도코딩
지식공유자2023.03.17
앗 잠시...
클래스를 static 으로 정의하셨다구요?
별도의 클래스가 아닌 InnerClass 로 정의하신 것 같은데.. 코드를 다음과 같이 분리하시면 static 필요 없이 문제 해결이 될 것으로 보입니다.
public class _Quiz_07 {
public static void main ( ... ) {
// 햄버거 객체 생성
}
}
class Hamburger {
...
}
class CheeseBurger extends HamBurger {
...
}
class ShrimpBurger extends Hamburger {
...
}
static 으로 정의하신 클래스가 Quiz_07 클래스 내에 포함된 것은 아닌지 확인해주세요 😅
감사합니다.
0
0
abj13
질문자2023.03.17
오 해결 됐습니다! 제가 각 자식클래스에 this.cook()으로 해놨었네요 ㅎㅎ;; super.cook()으로 바꾸고 클래스를 static으로 명시해주니까 해결 됐습니다!
답변 3