예를 들어, Context class를 보면, 아래와 같이 나옵니다. (https://developer.android.com/reference/android/content/Context)
Context
public abstract class Context
extends Object
자바 기초 문법을 안다면, Context가 직접적으로 어떤 클래스를 상속받는지 extends 키워드를 통해 어렵지 않게 알 수 있습니다.
위처럼 된 부분은 클래스의 계층구조를 나타낸 것이구요.
Known indirect subclasses AbstractInputMethodService, AccessibilityService, AccountAuthenticatorActivity, Activity, ActivityGroup, AliasActivity, Application, AutofillService, BackupAgent, BackupAgentHelper, CallRedirectionService, CallScreeningService, CameraPrewarmService, CarrierMessagingClientService, CarrierMessagingService, and 48 others. |
위는 직접적으로 Context를 상속받은 클래스들과 간접적으로 상속을 받은 클래스들이 나열되어 있습니다.
문서의 나머지 부분은 클래스에 대한 설명, 멤버필드와 메소드들이구요.
모든 클래스를 다 기억할 수는 없습니다. 대신 안드로이드에 핵심이 되는 구성요소인 Activity, Fragment, Service, BroadCastRecdeiver 등읖 포함해서는 빈번하게 사용하게 되므로 잘 알아두는 것이 좋구요. 새로운 클래스가 접하게 된다면 그 때마다 API문서를 한번 살펴보는 것이 좋습니다. 그리고 클래스들은 대충 어떤 메소드가 있고 흔하게 사용되는 메소드 정도만 어떻게 선언되어 있는지 알아두시면 좋을 것 같고, 굳이 기억을 하실 필요는 없습니다. 필요할 때마다 문서를 참조하면 됩니다. 따라서 문서의 구조만 이해하시고, 읽기 능력을 키우시면 많은 도움이 됩니다. 개발자는 읽는 데 상당 시간을 보내게 되기 때문에 글에 대한 이해력이 좋을 수록 좋습니다.
추가적으로 API의 사용법을 이해하는 좋은 방법 중의 하는 각 API에 대한 테스트코드를 작성해보는 겁니다. 테스트 코드는 동작을 이해하는데 도움이 되는데 도움이 많이 됩니다. 안드로이드 개발을 배울 때 부터 같이 배우라고 강력히 권장하고 싶은 부분 중의 하나이기도 하구요. 테스트 코드 작성은 습관에 가깝기 때문에, 처음부터 습관을 들이지 않으면 실제로 작성하는 건 쉽지 않습니다.