Java基础类库简介

一、常用的基础类库:11个jar(Java Archive,Java归档)包

作为java语言使用者,我们可以感受到java语言带来的优势(平台无关、面向对象、多线程、高效易扩展等),而且它有很多已经实现的类库可以供我们直接使用,这些类库都是以jar包的形式提供的,也可以成为java API,它为编程者实现了各种常用操作的方法,为程序员编写java程序代码带来了许多方便。

作为初学者,我觉得熟练掌握和应用java基础类库是很有必要的。因此,总结了一些自己在初学java时的一些基础类知识点。Java 2标准所提供的主要API如下表所示。

包名

内容概述

Java.applet

提供创建applet小程序所需要的类

Java.awt

包含用于创建用户界面和绘制图形图像的所有类

Java.io

提供与输入输出相关的类

Java.beans

包含与开发javaBeans相关的类

Java.lang

提供java语言程序设计的基础类

Java.net

提供实现网络操作相关的类

Java.nio

为输入输出提供缓冲区的类

Java.text

提供处理文本、日期、数字和消息的类和接口

Java.util

提供处理日期、时间、随机数生成等各种使用工具的类

Javax.net

提供用于网络应用程序的类、网络应用扩展类

Java.swing

提供一组与AWT功能相同的纯java的组件类

二、java.lang包

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

类名

功能

Boolean

封装了boolean类型的值以及一些操作该类型的方法

Byte

封装了byte类型的值以及一些操作该类型的方法

Character

封装了char类型的值以及一些操作该类型的方法

Double

封装了double类型的值以及一些操作该类型的方法

Float

封装了float类型的值以及一些操作该类型的方法

Integer

封装了int类型的值以及一些操作该类型的方法

Long

封装了long类型的值以及一些操作该类型的方法

Short

封装了short类型的值以及一些操作该类型的方法

String

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

Void

表示对Java中的void关键字的声明,这个类不可以实例

Class

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

ClassLoader

用于加载类的对象

Enum

用于定义枚举类型

Math

用于实现基本数学运算

Number

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

Object

是所有java类的根类

Package

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

Runtime

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

StrictMath

用于实现基本的数学运算

StringBuffer

用于可变字符串的操作

StringBuilder

创建可变的字符串对象

System

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

Thread

创建和控制线程

ThreadGroup

创建和控制线程组

Throwable

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

Process

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

定义在java.lang包中的主要接口及其相应的功能说明如下表:

接口

功能

Appendable

用于追加字符串

Cloneable

用于复制类对象

Runnable

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

Comparable

用于类对象的排序

2.Object类说明

Object类是java体系中所有类的父类,即在java语言开发的程序中所创建的类对象都是由object类派生出来的,都实现或者继承了object类中的方法。

Jar包中封装了一些常量、变量以及方法,当一个类对象被创建后,可以直接引用对象中的常量和变量,调用对象中的方法时要明确方法的输入参数,并为方法提供符合参数类型的数据和返回值;还要知道该方法在调用时是否会产生异常,如果方法可能会产生异常,需要使用try-catch语句结构来捕获和处理异常,或者使用java关键字throws将可能产生的异常抛出。

3.Java基本数据类型

Java语言中规定的基本数据类型包括boolean、byte、character、double、float、integer、long、short等8个。通过这些可以声明基本数据类型的常量、变量。但是因为java是纯面向对象的程序设计语言,为了实现面向对象,java.lang中给这些基本数据类型定义了对应的类(封装了基本数据类型的变量类型、与变量相关的常量及相关的操作方法),这样就能够在使用这些基本类型的值或者变量时将其当做对象处理。

在java.lang包中还定义了Number抽象数据类型,专门针对纯数字对象的操作,在基本数据类型中针对纯数字对象的操作包括整数和浮点类型。由此可知,Number类是整型和浮点类型的直接父类,在number类中定义了适用于不同数据类型纯数字的操作方法和抽象方法。

(说明:character类封装了char类型的数值以及相关的操作方法,其字符全部采用Unicode标准编码)

4.字符串类String&StringBuffer

在java.lang中还提供了处理字符串的String类,String类用于处理“不可变”的字符串;相对地,还提供了StringBuffer类用于处理“可变”字符串。Stirng类和StringBuffer类都被声明为final类型,因此不能将其当做父类再被继承使用了。

(1)String类

String类用于创建字符串对象,其值在创建之后被当做常量,String类里面还封装了字符串类型的数值以及相关的操作方法。String类中的所有操作方法都是针对已经创建的String对象而言的,而String对象是通过String类的构造函数创建的。

(2)StringBuffer类

StringBuffer类是字符串缓冲区类,用于创建长度可变的字符串对象,这里的“长度可变”是指通过某些方法的调用可以改变字符串的长度和内容,比如通过在原字符串的基础上追加新的字符串序列,或者在原字符串的某个位置上插入新的字符序列等构成新的字符串对象。

StringBuffer类创建字符串对象是基于开辟新的缓冲区实现的,在缓冲区中存放字符串的字符序列,因为缓冲区是有一定容量的,所以当字符串长度改变的之后,如果超过了缓冲区的容量时,即发生缓冲区溢出时,java运行系统会自行扩大StringBuffer对象创建的缓冲区容量,保证了对字符串操作的安全性。

5.Math类

Math类中封装了各种数据类型的算术操作,即包含了指数、对数、平方根、三角函数等操作。在math类中其所有的常量和方法都被定义为静态的,因此所有的成员都可以直接被引用。

6.Runtime类

Runtime类中封装了一些和java虚拟机相关的方法,在java虚拟机启动每个java应用程序时都会创建一个runtime对象,它会保证java应用程序和其运行环境的连接,runtime对象创建后,在java应用程序中就可以直接调用runtime类中定义的方法(如:获取当前程序的运行信息、退出程序运行、关闭java虚拟机等操作)。

7.System类

System类封装了一些和计算机输入/输出系统相关的常量,以及与java虚拟机相关的操作方法。Java虚拟机启动之后就会创建system对象,在java应用程序中无法创建system对象。System类中所有的常量和方法都被定义为静态的,因此,在java应用程序中可以直接调用system类里面定义的常量和方法。

8.小结

关于java语言提供的可用类库有很多,给程序员带来很多的便捷,在具体使用时需要查看帮助文档和说明,确定功能。要重点关注的还是某个操作方法的输入参数、返回值、异常等。

Java基础类库简介的更多相关文章

  1. 菜鸡的Java笔记 java基础类库 BaseClassLibrary

    java基础类库 BaseClassLibrary        StringBuffer 类的特点        StringBuffer,StringBuilder,String 类之间的关系   ...

  2. JAVA常用类库简介(转)

    Java编程语言中为方便学习者学习,编制了许多类,这些类已经经过测试,都是我们编程的基础.如果不利用这些已存在的类,我们的编程工作将变得异常复杂并且效率低下.所以我们应尽可能多的掌握Java基本类库的 ...

  3. 九. 常用类库、向量与哈希1.Java基础类库

    Java 的类库是 Java 语言提供的已经实现的标准类的集合,是 Java 编程的 API(Application Program Interface),它可以帮助开发者方便.快捷地开发 Java ...

  4. GitHub 上100个最受欢迎的Java基础类库

    作为一名整天与既成熟且不断发展的Java语言打交道的开发者,面对的困境之一就是在我们编写代码的时候,是使用一些人人谈论的人们新技术呢,还是坚持使用一些虽旧但成熟的类库? 由于Java应用中大部分是商业 ...

  5. Java基础入门 - 简介

    官网:https://www.oracle.com Java分为三个体系: JavaEE: Java Platform, Enterprise Edition, Java平台企业版 JavaSE: J ...

  6. java基础集合简介Map(三)下

    --Map接口简介 今天来看一看map集合,map映射接口,用于存放键值对,<key,value>,通过key来查找value,顾名思义key不能为空,唯一且不重复,不然底层怎么查呢! 可 ...

  7. java基础集合简介Set(三)中

    今天主要说夏set集合,每天抽出一个小时总结下,生活会更加美好! --< java.util >-- Set接口: 数据结构:数据的存储方式: Set接口中的方法和Collection中方 ...

  8. 第七章 java基础类库

    1. 日期时间: 用Calendar类. 2. 分隔符:空格.tab.回车. 3. Scanner:读取键盘输入.读取文件. 4. 系统类: System  Runtime. 5. 所有的java类都 ...

  9. Java基础类库

    1 main方法      运行java程序的参数:   下面详细讲解main 方法为什么采用这个方法签名 1.public 修饰符:Java类由jvm调用,为了让jvm可以自由调用这个main()方 ...

随机推荐

  1. php表单提交时获取不到post数据的解决方法

    找到了一位博主的方法完美解决,链接如下: http://blog.csdn.net/whd526/article/details/53263181

  2. asp.net跳出iframe结构转向登录

    在网页编程时,我们经常需要处理,当session过期时,我们要跳到登陆页面让用户登陆,由于我们可能用到IFrame框架,所以我们我登陆页面需要显示在整个页面,而不是一个IFrame中,大部分的网友是用 ...

  3. Raid 配置

    清除所有外部设备 /opt/MegaRAID/MegaCli/MegaCli64 '-CfgForeign -Clear' -aAll 修改盘的jbod状态 /opt/MegaRAID/MegaCli ...

  4. 关于现在IT行业从业者一些建议

    本人从事IT行业,确切的说应该是软件开发行业已经9个年头了,从刚开始小白也慢慢的已经有了自己独有的开发习惯. 近些年进入行业的人越来越多,有可能确实看到了这行业就业及薪资待遇,更多的也是随着互联网及移 ...

  5. http协议中302和303的区别

    http1.0协议中只有302码,没有303状态码:http1.1,在默认情况下,很多服务端基础程序,为了兼容http1.0,在遇到本应响应303时,也给客户端响应了302. 碰到的问题: 场景: 在 ...

  6. FxCop卸载后依然生成文件夹的问题

    在 http://www.cnblogs.com/heroius/p/8270004.html 中,通过编辑csproj文件可以移除对旧版nuget独立程序的依赖. 实际上,通过编辑项目文件的方式可以 ...

  7. poj 1154 letters (dfs回溯)

    http://poj.org/problem?id=1154 #include<iostream> using namespace std; ]={},s,r,sum=,s1=; ][]; ...

  8. centos7下更改docker镜像和容器的默认路径

    笔者近期在服务器上搭建docker环境,可由于笔者是普通用户,在安装的时候就跳了很多坑,现在记录一下. 一.docker权限问题 据官方解释,搭建docker环境必须使用root权限,或者sudo装, ...

  9. mariadb插入中文数据乱码解决过程

    基本情况: 系统:centos 7 mariadb安装方式:yum 乱码解决过程: 查看当前数据库编码(登录数据库后) # show variables like 'character%'; (上图为 ...

  10. js面向对象的理解

    ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是,ECMAScrip ...