마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

super를 왜 하는거죠?

0 추천
onCreate나 onStart나

onBackKeyPressed 같은 메서드들 오버라이딩 하면

super.메서드();

이렇게 자동으로 추가되는데

 

어떨때는 저 super를 놔두고 그 아래 코딩할때가 있고

어떨때는 super를 지워버리고 코딩할때가 있는데

언제 super를 놔둬야하고 언제 지워야 하는건가요?
갸아악 (21,260 포인트) 님이 2013년 7월 5일 질문

1개의 답변

+4 추천
 
채택된 답변

상속을 받아 함수 오버라이딩 하여 해당 메소드의 동작을 변경할 때,

해당  super 함수로 불러 주면 parent 의 해당 메소드에서 수행하던 동작을 수행합니다.

만약 super를 빼주면 해당 동작을 수행하지 않을 테구요.

 

 

예를 들어 onBackKeyPressed에서 super 를 불러주면 기존 동작인 backkey가 눌렸을 때 activity가 나가는 등의 동작이 수행되고,  빼버리면 backkey가 막힌 효과를 줄 수 있습니다.

 

사악미소 (65,330 포인트) 님이 2013년 7월 5일 답변
갸아악님이 2013년 7월 5일 채택됨
...