作为Java语言的使用者,我们可以感受到Java语言的优势

  • 平台无关
  • 面向对象
  • 多线程
  • 高效易扩展等

而且它有很多已经实现的类库可以供我们直接使用,这些类库都是以jar包的形式提供的
它们共同构成了Java API,为编程者实现了各种常用操作的方法,为程序员编写Java程序代码带来了许多方便

对于Java初学者,首先要学习和掌握Java中最常用的一些基础类库
然后通过做项目不断的掌握和应用,并逐步的学习、钻研底层的设计原理

Java API中的常用jar包

在Java众多的API中,目前使用较多的jar包如下表所示:

包名 内容概述
java.lang 提供java语言程序设计的基础类
java.util 提供处理日期、时间、随机数生成等各种使用工具的类
java.io 提供与输入输出相关的类
java.net 提供实现网络操作相关的类
java.sql 提供使用访问并处理存储在数据库中的数据的API
java.nio 为输入输出提供缓冲区的类
java.text 提供处理文本、日期、数字和消息的类和接口
java.awt 包含用于创建用户界面和绘制图形图像的所有类
javax.swing 提供一组与AWT功能相同的纯java的组件类

java.lang.*

java.lang包是java语言体系中其他所有类库的基础,已经内嵌到java虚拟机中
而且以对象的形式创建好了,所以我们在使用java.lang包时不需要再使用import将其导入,可以直接使用java.lang包中的所有类,以及直接引用某个类中的常量、变量和方法

lang包下常用的类

String

封装了与字符串类型相关的操作方法

Class

用于描述正在运行的java应用程序中的类和接口的状态

ClassLoader

用于加载类的对象

Enum

用于定义枚举类型

Math

用于实现基本数学运算

Number

抽象类,是基本数据类型类的父类

Object

所有java类的根类

Package

封装了有关java包的实现和规范的版本信息

Runtime

Runtime类对象使java应用程序与其运行环境相连接

StringBuffer

用于可变字符串的操作

StringBuilder

创建可变的字符串对象

System

封装了一些与java虚拟机系统相关的方法

Thread

创建和控制线程

ThreadGroup

创建和控制线程组

Throwable

定义了java中的所有错误或者异常的父类

Process

定义一个进程process对象,通过Runtime类中的exec方法启动该进程对象

lang包下常用的接口

Appendable

用于追加字符串

Cloneable

用于复制类对象

Runnable

用于实现类对象具有线程功能

Comparable

用于类对象的排序

java.util.*

包含集合框架
collection类
事件模型
日期和时间设施
国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)
集合类
时间处理模式
日期时间工具等各类常用工具包

java.io.*

Java的核心库java.io提供了全面的IO接口,包括

  • 文件读写
  • 标准设备输出等

Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入

java.net*

主要用于处理以下抽象

地址

也就是网络标识符,如IP地址

套接字

也就是基本双向数据通信机制

接口

用于描述网络接口

URI

表示统一资源标识符

URL

表示统一资源定位符

连接

表示到URL所指向资源的连接

InetAddress类是对IP(Internet 协议)地址的抽象。它拥有两个子类:

  • 用于IPv4地址的: Inet4Address
  • 用于IPv6地址的: Inet6Address

java.sql.*

提供使用Java语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的APl
此API包括一个框架,凭借此框架可以动态地安装不同驱动程序来访问不同数据源