java sdk和java api 的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java sdk和java api 的区别相关的知识,希望对你有一定的参考价值。

    SDK是Software Development Kit的缩写,中文意思是“软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。SDK是一系列文件的组合,它为软件的开发提供一个平台(它为软件开发使用各种API提供便利)。

    api,application programming interface,应用程序编程接口。
    在不同场合,这个编程接口的含义不同
    java api是指java标准类库提供的函数,android开发的api是指android sdk函数库。
    例如:网站api一般是指一个网站提供的接口,比如登录验证、信息查询、通知、支付等等。windows api是指windows操作系统提供的api3

    总结:SDK相当于开发集成工具环境,api 就是数据接口。在sdk环境下调用api数据。

参考技术A sdk,是英文software developer kit的缩写,意思是软件开发包,意思很明显了,就是与有java开发相关的一些类库,工具(java.exe...),环境(jre)等
api,是英文Application Programming Interface的缩写,意思是应用程序编程接口,通俗来说就相当于java提供的一系列可供调用的类和方法本回答被提问者采纳
参考技术B API(Application Programming Interface,应用编程接口)其实就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API 而使操作系统去执行应用程序的命令(动作)。
SDK,Software Development Kit 的缩写,中文即“软件开发工具包”。广义上指辅助开发某一类软件的相关文档、范例和工具的集合
一般我们使用的jdk就属于sdk,也就是整合了开发软件的一些工具.而这些工具所提供的一些编程接口例如类,方法等就是api
参考技术C javaSDK(software developer kit)是java 的软件开发包,里面集成了JRE(
Java Runtime Environment )也就是java运行环境,后者是运行java程序所必须的环境,前者是开发java程序必须的代码库,java常用的类库都在sdk里面。
javaAPI(Application Programming Interface)应用程序接口,是运行库的集合,它提供了一套访问主机系统资源的标准方法。每个平台要想实现java就需要实现api,它是标准接口。每个平台在底层实现api的方法不同,但是api提供给用户的方法是一样的,这个方法让java成为平台无关性的语言。
参考技术D 其实对于java来说 jdk就是sdk.....
就是java开发幻境

api是java开发时候使用的工具文档 类似与c语言的头文件

JDK和JRE的区别?

自身对于JDK和JRE了解不是很深刻,重新学习了下别人对于它俩的认识。

JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。

如果安装了JDK,会发同你的电脑有两套JRE,一套位于 \jre 另外一套位于 C:\Program Files\Java\jre1.5.0_15 目录下,后面这套比前面那套少了Server端的Java虚拟机,不过直接将前面那套的Server端Java虚拟机复制过来就行了。而且在安装JDK可以选择是否安装这个位于 C:\Program Files\Java 目录下的JRE。如果你只安装JRE,而不是JDK,那么只会在 C:\Program Files\Java 目录下安装唯一的一套JRE。
JRE的地位就象一台PC机一样,我们写好的Win32应用程序需要操作系统帮我们运行,同样的,我们编写的Java程序也必须要JRE才能运行。所以当你装完JDK后,如果分别在硬盘上的两个不同地方安装了两套JRE,那么你可以想象你的电脑有两台虚拟的Java PC机,都具有运行Java程序的功能。所以我们可以说,只要你的电脑安装了JRE,就可以正确运行Java应用程序。
1、为什么Sun要让JDK安装两套相同的JRE?
这是因为JDK里面有很多用Java所编写的开发工具(如javac.exe、jar.exe等),而且都放置在 \lib\tools.jar 里。从下面例子可以看出,先将tools.jar改名为tools1.jar,然后运行javac.exe,显示如下结果: Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 这个意思是说,你输入javac.exe与输入 java -cp c:\jdk\lib\tools.jar com.sun.tools.javac.Main 是一样的,会得到相同的结果。从这里我们可以证明javac.exe只是一个包装器(Wrapper),而制作的目的是为了让开发者免于输入太长的指命。而且可以发现\lib目录下的程序都很小,不大于2 9K,从这里我们可以得出一个结论。就是JDK里的工具几乎是用Java所编写,所以也是Java应用程序,因此要使用JDK所附的工具来开发Java程序,也必须要自行附一套JRE才行,所以位于C:\Program Files\Java目录下的那套JRE就是用来运行一般Java程序用的。
2、如果一台电脑安装两套以上的JRE,谁来决定呢?
这个重大任务就落在java.exe身上。Java.exe的工作就是找到合适的JRE来运行Java程序。 Java.exe依照底下的顺序来查找JRE:自己的目录下有没有JRE;父目录有没有JRE;查询注册表: [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment] 所以java.exe的运行结果与你的电脑里面哪个JRE被执行有很大的关系。

以上是关于java sdk和java api 的区别的主要内容,如果未能解决你的问题,请参考以下文章

WCF,WebAPI,WCFREST和WebService的区别

java jdk 和 sdk ,有什么不一样 ?

JDK和Java SDK的区别

jdk和java虚拟机的区别

API和SDK的区别

sdk跟api的区别是啥?