ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java]초기화란?
    Java & Kotlin 2020. 5. 30. 18:14
    반응형

    문득 "초기화"가 뭘까라는 생각이 들었습니다.

     

    우리가 공유기를 사용하다가 잘 안될 때 "초기화"를 하고는 합니다. 그때 일반적으로 드는 생각은 뭔가 설정이 가득 쌓여있다가 싹 사라지고, 초기 설정으로 돌아가는 느낌이 듭니다. 

     

    하지만 왜 초기화하는 걸까요? 애초에 넣은 값이 없는데, 뭘 다시 되돌리는 걸까요? 뭐가 있어야 처음으로 돌아갈 값도 있는 것 아닐까요?

     

    Intialization (초기화)의 사전적 의미

    영어로는 "Initialization" 입니다.

     

    구글 사전에 의하면 "작업을 시작하기 위해서 값을 설정하거나 넣는 것, 포맷(컴퓨터 디스크)"이라는 뜻 이라고 합니다.

     

    엥? 뭔가 되돌리는 느낌이랑 완전 반대입니다. 애초에 아무것도 없기 때문에 뭔가 넣어주는 느낌입니다.

     

    위키피디아에서 좀 더 알아보겠습니다. "컴퓨터 프로그래밍에서 초기화는 데이터 객체 혹은 변수를 위해서 초기값을 지정해주는 것"이라고 나와있습니다.

     

    그렇습니다. 초기화를 하게 되면 JVM이 Heap 메모리에 주소를 할당을 하게 됩니다.

     

    초기화

    Tistory tistory = new Tistory()

     

    tistory 객체를 메모리에 할당합니다. 아직 tistory 객체를 이용해서 어떠한 메서드도 가지고 오지 않았지만, 메모리에서는 tistory를 위한 공간을 만들어 놓은 상태입니다. 즉 빈 공간의 메모리 주소를 설정해놓은 상태입니다. 이때 tistory 객체 변수를 이용해 메서드를 가지고 오게 된다면, 해당하는 메모리 주소에 값이 입력되게 됩니다.

     

    저는 처음에 공부를 할 때 "초기화"라는 단어가 헷갈렸습니다. 뭔가 되돌려야 하는데, 아무것도 없는데 자꾸 되돌리라고 하니까요. 그래서 저처럼 혹시나 헷갈리시는 분들은 영어단어 그대로를 찾아보시는 것도 도움될 것이라고 생각합니다.

     

    반응형

    댓글

Designed by Tistory.