首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android Context 繼承鏈:非所有類父類,Object 才是根

     編輯:程式設計綜合問答

誤區:Context 是所有類父類。事實:

  • java.lang.Object 是所有類的根父類
  • Context 是 ContextWrapper → ContextImpl 的抽象基類
  • Activity、Service、Application 繼承 ContextWrapper 間接實現 Context
  • 普通 POJO、工具類**無需**繼承 Context

Context 核心能力

最佳實踐

  • 傳 Context 參數而非持有長引用(防洩漏)
  • 區分 ApplicationContext(長壽命)與 ActivityContext(短壽命,持有 View)
  • 查看源碼:Android Studio Ctrl+Click Context 進入 Context.java
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
類別代表方法/字段
資源訪問getResources(), getString(), getDrawable()
系統服務getSystemService(), getPackageManager()
組件操作startActivity(), sendBroadcast(), bindService()
文件/數據getFilesDir(), getSharedPreferences(), openOrCreateDatabase()
主題/樣式getTheme(), obtainStyledAttributes()