안드로이드는 크게 컴포넌트 클래스와 일반 클래스로 나뉜다

구분하는 기준은 생명주기 관리를 안드로이드 시스템이 한다면 컴포넌트, 개발자가 한다면 일반이다

안드로이드 컴포넌트는 4종류로 나뉜다

각 기능마다 접미사로 해당 이름들이 붙어있기 때문에 어떤 클래스가 어떤 컴포넌트인지 구분하는 것은 쉽다

컴포넌트의 백그라운드 제약

컴포넌트는 앱 안에서 독립된 실행 단위다

왜냐하면 시스템 컴포넌트의 생명주기는 안드로이드 시스템이 관리하기 때문이다

카톡을 예시로 들면 채팅 목록 화면에서 선택으로 채팅 화면으로 진입한다고 하자

ListActivity에서 ChatActivity를 직접 생성하는 개념이 아니다

ListActivity는 안드로이드 시스템에 ChatActivity를 생성해 달라고 의뢰할 수 있을 뿐이다

그러면 시스템은 해당 액티비티를 독립적으로 생성하며, 따라서 두 액티비티는 서로 종속되지 않고 독립적이다.

인텐트(Intent)