Android libcore 目录

Android 核心库(Android core libraries)是 Android 系统中支持,但是本身不属于 Android
的 Java 库。Android 系统中支持众多 Java 标准的库,例如 java.lang 包。这部分内容由 libcore 来提供。

libcore 中的各个子工程目录支持的 Java 包

Android 9.0.0_r3

子工程目录描述
luniJava 基础包、扩展包、组织提供的类库等
libartart 运行时部分相关包
dalvikdalvik 虚拟机相关的包
dom文档对象模型
jsonjson 串在 Java 中的支持
xmlXML工具
ojluniOpen JDK 版的 Java 包

luni 实际上是 lang、util、net、io 这 4 个内容头字母的组合,Java 中主要类库模块的首字母组合,表示 Java 语言最为核心部分的内容。
luni 目录的主要结构如下所示:

luni
|--src
    |-benchmark
    |-main
    |   |-java
    |   |-native
    |-module
        |-java
            |-module-info.java
    |-test

main 目录为 Java 的主要实现内容,按照包名、类名组织目录结构,其中包含了 Java 代码和本地代码;native 则是部分 Java 代码的本地实现内容。

module-info.java 显示了 luni 中所有导出的类。

libcore 中其他子工程的目录结构和 luni 类似。

标准 Java 库中的很多代码来自 Java Apache Harmony( http://harmony.apache.org/ )。Android 对其中的一些内容做出内存和 CPU 方面的优化更改。
Android 做出更改的部分,通常具有如下的注释标记:

// BEGIN android-added
// 此间的内容为 Android 系统实现中增加的内容
// END android-added

// BEGIN android-changed
// 此间的 Android 内容为系统实现中更改的内容 
// END android-changed

// BEGIN android-removed
// 此间的 Android 内容为系统实现中删除的内容 
// END android-removed

luni 中支持的几个最主要的包为:Java 标准包(java 包及其子包)、Java扩展包(javax 包及其子包)、企业和组织提供的 Java 类库(org 包及其子包)。

其中也有一些包是 Android 系统中专用的,例如其中的 src/java/libcore 目录实际上是 libcore.* 包及其子包,这显然是 Android 当中专用的实现,某些 Java 标准库也利用这些专用内容进行优化实现。

提示: libcore 中支持的很多 Java 包是 Android 内部使用的,因此并不包含在 API 帮助文档中。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值