• API的理解


    API(Application Programming Interface,应用程序编程接口:是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    通俗的讲API就是接口,就是通道,负责一个程序和其他软件的沟通,本质是预先定义的函数。

    API通常是以Http的形式提供,它隐藏的含义就是,只要你符合我定义的标准,你就可以来使用我。

    扩展资料:

    API,往往是和SDK放在一起的。SDK即软件开发工具包。软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,它可以简单的为某个程序设计语言提供应用程序接口 API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。SDK 还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。

    在不同场合,这个API的含义不同
    java api是指java标准类库提供的函数,是Java自己提供的标准类库;比如你用的System.out.println();打印函数,就是Java自己实现的方法,你只管调用就可以了;
    通常说查API就是让你去看Java自己实现的函数,查看它怎样调用,要传什么参数等;

    java标准类库基于java 8

    lang包:
    该包提供了Java语言进行程序设计的基础类,它是默认导入的包。该包里面的Runnable接口和Object、Math、String、StringBuffer、System、Thread以及Throwable类需要重点掌握,因为它们应用很广。

    Util包:
    该包提供了包含集合框架、遗留的集合类、事件模型、日期和时间实施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。

    IO包:
    包括支持输入和输出功能的类和接口

    sql包:
    该包提供了使用Java语言访问并处理存储在数据源(通常是一个关系型数据库)中的数据API。

    net包:
    封装了网络层,应用层:http协议,和传输层:tcp/udp的一些协议

    text包:
    提供了与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。

    awt包:
    包含了构成抽象窗口工具集类

    java.applet包:
    java.time包:
    java.beans包:
    java.math包:
    java.nio包:
    java.rmi包:
    java.security包:
    javax.swing包:
    这两个包提供了GUI设计与开发的类。java.awt包提供了创建界面和绘制图形图像的所有类,而javax.swing包提供了一组“轻量级”的组件,尽量让这些组件在所有平台上的工作方式相同

    android开发的api是指android sdk函数库。
    网站api一般是指一个网站提供的接口,比如登录验证、信息查询、通知、支付等等。
    windows api是指windows操作系统提供的api  有非正式的简称法为WinAPI,是微软对于Windows操作系统中可用的核心应用程序编程接口的称法。它被设计为各种语言的程序调用,也是应用软件与Windows系统最直接的交互方式。大多数驱动程序需要对Windows系统更底层次访问接口,由所用版本的Windows的Native API来提供接口。Windows有一个软件开发包(SDK, software development kit)提供相应的文档和工具,以使程序员开发使用Windows API的软件和利用Windows技术。

    API(Application Programming Interface,应用程序编程接口)
    简单来说,就是其他人开发出来一块程序,你想用,他会告诉你调用哪个函数,给这个函数传什么参数,然后又会返回给你一个什么样的结果,你不需要知道他函数里面到底是怎么做的,只要清楚这样调用就能实现某种功能就可以了。
    比如别人已经做好了一块几何处理程序,你想拿来算圆的面积,他会告诉你把半径传给他,他就把面积值传给你,至于他里面是怎么算的不用你管。
    API是这种模式再复杂很多的应用,涉及硬件软件多方面的工作,不过总体来说就是他告诉你怎么用能产生什么结果,你就直接拿来用就行了

    SDK与API区别

     https://blog.csdn.net/feng98ren/article/details/80047450

    API的其他介绍

    API的英文全称(Application Programming Interface)。
      1、对这个定义的理解,需要追溯到操作系统的发展历史上,当WINDOWS操作系统开始占据主导地位的时候,开发WINDOWS平台下的应用程序成为人们的需要。而在WINDOWS程序设计领域处于发展的初期,WINDOWS程序员所能使用的编程工具唯有API函数,这些函数是WINDOWS提供给应用程序与操作系统的接口,他们犹如“积木块”一样,可以搭建出各种界面丰富,功能灵活的应用程序。所以可以认为API函数是构筑整个WINDOWS框架的基石,在它的下面是WINDOWS的操作系统核心,而它的上面则是所有的华丽的WINDOWS应用程序。
      2、那时的WINDOWS程序开发还是比较复杂的工作,程序员必须熟记一大堆常用的API函数,而且还得对WINDOWS操作系统有深入的了解。然而随着软件技术的不断发展,在WINDOWS平台上出现了很多优秀的可视化编程环境,程序员可以采用“即见即所得”的编程方式来开发具有精美用户界面和功能强大的应用程序。
      3、可视化编程环境操作简单、界面友好(诸如VB、VC++、DELPHI等),在这些工具中提供了大量的类库和各种控件,它们替代了API的神秘功能,事实上这些类库和控件都是构架在WIN32 API函数基础之上的,是封装了的API函数的集合。它们把常用的API函数的组合在一起成为一个控件或类库,并赋予其方便的使用方法,所以极大的加速了WINDOWS应用程序开发的过程。有了这些控件和类库,程序员便可以把主要精力放在程序整体功能的设计上,而不必过于关注技术细节。
      4、实际上如果要开发出更灵活、更实用、更具效率的应用程序,必然要涉及到直接使用API函数,虽然类库和控件使应用程序的开发简单的多,但它们只提供WINDOWS的一般功能,对于比较复杂和特殊的功能来说,使用类库和控件是非常难以实现的,这时就需要采用API函数来实现。
      5、这也是API函数使用的场合,所以我们对待API函数不必刻来研究每一个函数的用法,那也是不现实的(能用的到的API函数有几千个呢)。API不要去学,在需要的时候去查API帮助就足够了

  • 相关阅读:
    【shell】awk引用外部变量
    【shell】获取第10+个位置参数
    【ELK】Elasticsearch的备份和恢复
    【linux】crontab的环境变量问题
    【linux】如何给sudo的root设置环境变量
    【zabbix】自动注册,实现自动发现agent并添加监控(agent不需要任何配置)
    【windows】如何让一个程序开机自启动
    【linux】如何查看进程运行在那颗cpu上
    【Windows】修改远程桌面端口号
    分享知识-快乐自己:mongodb 安装部署(linux)
  • 原文地址:https://www.cnblogs.com/whymoney1000/p/11150292.html
Copyright © 2020-2023  润新知