Study/면접준비
-
Java Garbage Collection에 대하여Study/면접준비 2019. 8. 14. 19:10
면접 단골 질문이라서 공부 할 겸 정리해보자... 어려워..ㅜㅜ 간단히 말하면 프로그램이 동적으로 할당했던 메모리 영역 중에서 필요없게 된 영역을 해제하는 기능이다. GC는 힙 영역에서 이루어진다. JVM은 메모리의 구역을 나누어 GC를 진행한다. 메모리 구역을 크게 Young Generation, Old Genertaion, Permanent Generation 으로 나눈다. Young 영역은 Eden, 두개의 Survivor Space로 구성되어있다. 새로운 객체가 할당되면 Eden 구역에 할당 된다. Eden 구역이 가득차면 쓰이지 않는 객체를 마킹하고 GC를 한다. 여기서 발생하는 GC는 minor GC라고 한다. 이후 살아남은 객체들은 첫번째 Survivor(s0)로 이동한다. Eden구역과 s..
-
Activity 생명주기Study/면접준비 2019. 8. 14. 18:54
1. onCreate() 액티비티가 처음 실행될 때 호출된다. 레이아웃을 구성한다. 초반에 번들 값은 null이지만 액티비티가 강제종료되었다가 다시 실행되는 겨우 번들에는 이전 상태의 정보가 저장되어 있어 복구할 수 있다. (onSaveInstanceState, onRestoreInstanceState) 2. onStart() 화면에 보이기 직전에 호출된다. 리소스를 설정한다.(BroadCastReciever 등록) 3. onResume() 화면이 포커스를 얻기 전 호출된다. 화면 갱신 처리 4. onPause() 포커스를 잃었을 때 호출 된다. (예: 팝업이 떠서 액티비티의 일부를 가렸을 때) 이 후 다시 포커스를 찾게 되면 onResume으로 돌아간다. 데이터 저장, 스레드 중지 등의 처리는 여기서 ..
-
안드로이드 4대 컴포넌트Study/면접준비 2019. 8. 14. 18:29
안드로이드엔 기본 컴포넌트 4개가 있으며 다음과 같다. 1. Acitivity (액티비티) 화면을 관리하며 사용자의 이벤트를 처리한다. 생명주기 메소드를 재정의 하여 기능을 구현한다. 2. Service (서비스) 화면이 존재하지 않는다. 백그라운드에서 동작한다. 한번 시작된 서비스는 어플리케이션이 종료되도 계속 백그라운드에서 동작한다. 3. Content Provider (컨텐츠 제공자) 데이터를 관리하고 앱 간 데이터 공유를 제공한다. 4. Broadcast Receiver (방송 수신자) 단말기 안에서 이루어지는 일들을 알려준다. 브로드캐스팅은 여러 객체에게 정보를 전달하는 것을 의미하는데 이 정보를 방송 수신자를 통해 받을 수 있다. 배터리 부족 같은 정보를 알려준다.