티스토리 뷰
Context
: Context는 어플리케이션 실행 환경에 관한 정보를 받을 수 있는 안드로이드 시스템에 의해 제공되는 추상 클래스이다.
Context가 없으면 액티비티를 시작할 수도, 브로드캐스트를 발생시킬 수도, 서비스를 시작할 수도 없다. 또한 리소스에 대한 접근도 Context를 통해서 가능하다.
- 앱 실행과 관련된 정보를 담고 있는 객체.(앱 실행 객체마다 각각 갖는다)
- Activity, Service, Application은 모두 Context를 상속받아 구현되어 있다.
- Activity, Service ,Application은 그 자체가 Context다!!
- Context는 안드로이드의 component들이 동작하기 위해 필요한 기능을 담고 있는 클래스다.
- Component가 생성될 때마다 context는 별도로 생성된다.
- Context의 실제 구현은 ContextImpI class에 되어 있다.
1) ContextWrapper
: Context의 대리인(Proxy)으로 원본 Context를 변화시키지 않고 수정할 수 있게 해주는 서브클래스이다.
=> Context를 이용하여 실제 동작을 구현하고 Component에서 이용하는 Context의 super에 해당한다.
ContextImpl의 변수를 노출하지 않고 ,
ContextImpi의 공개메서드만 호출하게 한다.
2) ContextImpl
: ContextWrapper생성자에 전달되는 인자
=> Context의 실제 구현이 ContextImpI class에 되어 있다.
'Android' 카테고리의 다른 글
View 클래스 계층 (0) | 2021.09.03 |
---|---|
Intent (0) | 2021.09.02 |
Task (0) | 2021.09.02 |
Activity 간의 데이터 교환 (0) | 2021.09.02 |
Activity 메서드 (0) | 2021.09.02 |