안드로이드 개발 질문/답변
(글 수 45,052)
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroid extends Activity{
public static void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
....
왜 onCreate를 여기서 당장 불러오면 안되고 꼭 super에서 불러와야 하는거에요??
알려주시면 감사하겠습니다 ㅠ
import android.os.Bundle;
public class HelloAndroid extends Activity{
public static void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
....
왜 onCreate를 여기서 당장 불러오면 안되고 꼭 super에서 불러와야 하는거에요??
알려주시면 감사하겠습니다 ㅠ
2010.01.16 23:11:39
안녕쵸코베리님은 그동안 질문하신 것들을 살펴보니 안드로이드를 공부하기에 앞서 자바공부부터 하셔야 할것 같습니다. 기초가 부족한 상태에서 게시판에서 질문하고 답받는 것으로는 한계가 있어요. 자바책을 먼저 한번 정독하신후에 안드로이드를 공부하시는게 좋을것 같습니다. 언어를 모르고 앱을 개발한다는 것은 있을수도 없고 한계가 있으니까요. 자바에 관해서는 이 게시판에서 많은 개발자님들이 말씀 나눈게 있네요. http://www.androidpub.com/54258
2010.01.17 00:29:07
super.xx()를 상위 클래스의 xx()를 호출 하는 것이지요
오버라이드 할때 super.xx()를 하는 경우는 상위 클레스에 있는 xx()에 내용을 추가 한다고 보시면 될 듯 합니다.
다시 말해 오버라이드 된 메소드는 상위 클래스의 xx() 라는 메소드가 하는 일을 처리 하고 추가로 작업을 처리 ~..
오버라이드 할때 super.xx()를 하는 경우는 상위 클레스에 있는 xx()에 내용을 추가 한다고 보시면 될 듯 합니다.
다시 말해 오버라이드 된 메소드는 상위 클래스의 xx() 라는 메소드가 하는 일을 처리 하고 추가로 작업을 처리 ~..
2010.01.17 06:00:11
실재 Activity 클래스를 살펴보시면 onCreate에서 기본적인 액티비티가 만들어지는 코드가 들어있습니다.
그냥 onCreate()를 오버라이드해서 쓰게되면 onCreate()를 텅텅빈 상태로 만들게 되어 버리니 super.onCreate()로 액티비티를 만드는 기본적인 코드를 실행시켜주는겁니다. 그리고는 이제 제가만들 액티비티가 만들어질때 해야될 일을 기록하는거죠
그냥 onCreate()를 오버라이드해서 쓰게되면 onCreate()를 텅텅빈 상태로 만들게 되어 버리니 super.onCreate()로 액티비티를 만드는 기본적인 코드를 실행시켜주는겁니다. 그리고는 이제 제가만들 액티비티가 만들어질때 해야될 일을 기록하는거죠
onCreate 함수에서 왜 super 함수를 호출해야 되는지 물어보신게 맞나요?
함수 호출은 무엇을 불러온다는 말을 쓸만한 개념은 아닌 것 같은데요.
Activity 에 있는 함수인 onCreate 함수를 재정의 하여 사용하였기 때문에 super 로 onCreate를 호출해주어야
상속된 클레스에도 해당 함수가 호출되기 때문에 super 를 이용하여 onCreate 함수를 호출해 준 것으로 생각됩니다만은..