강의

멘토링

로드맵

Inflearn コミュニティ Q&A

sudo02720481 のプロフィール画像
sudo02720481

投稿した質問数

Javaプログラミング入門講座(renew ver.) - 初心者から開発者就職まで!!

継承の特徴

Object 클래스로는 childs를 묶을 수 없는건가요?

作成

·

368

1

Object[] childs = new Object[2];

이렇게 선언을 했는데,

childs[i].makeJJajang();

이거 할 때
`
java: cannot find symbol

symbol: method makeJJajang()

location: class java.lang.Object
`
이렇게 뜨는데 왜 안되는건가요?

java

回答 2

0

최상위클래스인 Object 배열 객체를 만드신 뒤에 Object에 선언되어있는 makeJJajang()이라는 메서드를 호출하시려고 하셨습니다. 그러나 makeJJajang()이라는 메서드는 ChildClass나 ParentClass에 있습니다. Object에 makeJJajang()이 정의되어 있지 않기에 뜨는 오류입니다.

 

위의 댓글과 같이 강제형변환하거나 해당 메서드가 있는 객체를 다시 만드시면 될 것 같습니다.

0

명시적 형변환이 필요해보입니다.

((ParentClass)childs[i]).makeJJajang(); 으로 하시면 될 듯합니다.

sudo02720481 のプロフィール画像
sudo02720481

投稿した質問数

質問する