작성
·
200
0
부모가 같으면 타입을 공유하는게 가능한것은 알겠는데, 어떠한 이유로 그게 가능한건가요?
그냥 '가능하다'에서 끝나고 정확히 무슨 원리로 가능한지 이해가 안됩니다.
자식 클래스를 이용해서 객체를 생성 후 배열에 전달해줄 때 자식클래스에서 생성된 내용은 클래스가 다르더라도 따로 보관되는것인가요?
변수나 메서드가 다를텐데 함께 배열에 저장되는게 이해가 잘 안됩니다.
답변 1
0
변수나 메서드가 아닌 객체의 타입이 ParentClass로 갖기 때문에 배열에 들어갈 수 있는 겁니다. FirstChildClass 그리고 SecondChildClass도 모두 ParentClass라는 타입을 가지니까요. (배열은 같은 타입의 데이터를 저장하는 자료구조니까요.)
생성자 호출순서에서도 보셨듯이 ParentClass가 생성되지 않았다면 이를 상속받는 First 그리고 SecondChildClass가 생성되지 않았을 것입니다.