JAVA的JDK和API的区别是:
1、Java好比房子,API好比土地,JDK好比开发商的关系。
2、 JDK与API都是为了JAVA,互依互存,又各自独立,只有共同才能创造价值。
一、全称:
1、JDK:Java Development Kit 。
2、API:Application Programming Interface 。
二、概念:
1、Java:是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
2、JDK:
(1)、JDK是Sun Microsystems针对Java开发员的产品。JDK本身使用了Java语言编写。简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
(2)、 自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。
3、API:
(1)、API是应用程序编程接口。
(2)、 是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
三、作用:
1、JDK:
(1)、jdk是 Java 语言的软件开发工具包。主要用于移动设备、嵌入式设备上的java应用程序。
(2)、JDK 是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。
(3)、不论什么Java应用服务器实质都是内置了某个版本的JDK。
2、API:
(1)、运行Java程序时,虚拟机装载程序的class文件所使用的Java API class文件。
(2)、ava API在Java安全性模型方面也有贡献。当Java API的方法进行任何有潜在危险的操作(比如进行本地磁盘写操作)之前,都会通过查询访问控制器来检验是否得到了授权。访问控制器是一个类,该类用来执行栈检验,已决定是否允许某种操作。
四、其它:
1、JDK:
(1)、JDK包含的基本组件包括:javac – 编译器、jar – 打包工具、javadoc – 文档生成器、jdb – debugger-查错工具、java – 运行编译后的java程序、appletviewer-小程序浏览器、Javap-Java反汇编器、Jconsole: Java进行系统调试和监控的工具等。
(2)、jdk1.8新特性:
(1)、Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。
(2)、新增lambda表达式
(3)、提供函数式接口
(4)、Java 8 允许你使用 :: 关键字来传递方法或者构造函数引用
(5)、我们可以直接在lambda表达式中访问外层的局部变量。
2、API:组成及特点:
(1)、所有被装载的class文件(包括从应用程序中和从Java API中提取的)和所有已经装载的动态库(包含本地方法)共同组成了在Java虚拟机上运行的整个程序。
(2)、在一个平台能够支持Java程序以前,必须在这个特定平台上明确地实现API的功能。
(3)、为访问主机上的本地资源,Java API调用了本地方法。
(4)、由于Java API class文件调用了本地方法,Java程序就不需要再调用它们了。
(5)、通过这种方法,Java API class文件为底层主机提供了具有平台无关性、标准接口的Java程序。
(6)、对Java程序而言,无论平台内部如何,Java API都会有同样的表现和可预测的行为。
(7)、正是由于在每个特定的主机平台上明确地实现了Java虚拟机和Java API,因此,Java程序自身就能够成为具有平台无关性的程序。