Android SDK与JDK区别和联系 您所在的位置:网站首页 ns没有hdmi线 Android SDK与JDK区别和联系

Android SDK与JDK区别和联系

2024-01-11 00:54| 来源: 网络整理| 查看: 265

对于Android SDK和JDK很多开发人员都不清楚它们之间得区别,以为Android虚拟机[ART&Darvit]就是JVM更是多数,以下梳理了SDK和JDK的区别和联系

Android SDK

Android SDK全称为安卓软件开发工具包,主要作用包括:

1.提供基础类库和官方推荐的附加类库

调用电话/调用相机/相册选择等都是由基础类库android.jar提供的 v4包v7包都是官方推荐的附加类库

2.编译工具

java编码文件通过编译工具编译成Darvit虚拟机能够读取的dex文件,Android4.4后使用Art虚拟机,运行效率得到极大的提高,关于这两种虚拟机的区别点击链接 DVM和ART原理初探

3.调试开发工具

提供了模拟器等调试开发工具

需求案例

2018年平安银行产品经理和开发人员打架事件受到广泛的关注,主要是由于不懂技术的产品经理提出奇葩需求:app的主题颜色能够根据手机壳的颜色变化而变化。我们一个需求的实现高度依赖于SDK,SDK提供了相关API我们就能做,如果没有提供我们就做不了,因此该开发人员在拒绝该需求的时候解释说没有提供接口,这里就是说SDK没有提供相关的API来做这个需求。

JDK

JDK全称为Java开发工具包,主要作用包括:

1.提供基础类库

由rt.jar提供了基础类的API,如果基础类没有只能由jar包的扩展类来提供

2.JVM[JAVA虚拟机]

class文件通过JVM"翻译"成机器能够识别的二进制的编码,充当着机器和虚拟机之间的桥梁

3.编译器

将java编码"翻译"成JVM能够识别的成class文件

4.调试开发工具

提供debug调试工具等

跨平台

Java之所以能实现其跨平台的属性其JVM功不可没,不管你是win、mac还是Linux系统,只要安装了JDK,就能跨平台运行class文件。JVM做了中间的桥梁,所以JVM是很牛逼的东西,可惜的是我国真正去研究JVM的人很少。

Android SDK和JDK区别和联系

1.Android SDK的基础类库[android.jar]参考了大部分的JDK基础类库[rt.jar],在此基础上进行的一些修减,增加了Android特有的也删除了JDK的一些基础类,也有改造了一些类。Android各版本对应的SDK和JDK版本

2.Android SDK不包括虚拟机但JDK包括虚拟机,Android的Darvit&ART虚拟机安装在Android设备上,Android是不存在main方法的入口这种说法的。

3.Android SDK编译工具[Gradle]是将java文件编译成Darvit&ART虚拟机能够读取的apk文件,JDK编译工具将java文件编译成JVM虚拟机能够读取的class文件。apk文件本质上就是zip包其中类主要编译在dex文件中,dex文件由class文件转化而来,因此apk的编译程序比war包[将class文件打包,用于部署在服务器]编译程序要多且要慢。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有