Java基础类库简介
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基础类库简介的更多相关文章
- 菜鸡的Java笔记 java基础类库 BaseClassLibrary
java基础类库 BaseClassLibrary StringBuffer 类的特点 StringBuffer,StringBuilder,String 类之间的关系 ...
- JAVA常用类库简介(转)
Java编程语言中为方便学习者学习,编制了许多类,这些类已经经过测试,都是我们编程的基础.如果不利用这些已存在的类,我们的编程工作将变得异常复杂并且效率低下.所以我们应尽可能多的掌握Java基本类库的 ...
- 九. 常用类库、向量与哈希1.Java基础类库
Java 的类库是 Java 语言提供的已经实现的标准类的集合,是 Java 编程的 API(Application Program Interface),它可以帮助开发者方便.快捷地开发 Java ...
- GitHub 上100个最受欢迎的Java基础类库
作为一名整天与既成熟且不断发展的Java语言打交道的开发者,面对的困境之一就是在我们编写代码的时候,是使用一些人人谈论的人们新技术呢,还是坚持使用一些虽旧但成熟的类库? 由于Java应用中大部分是商业 ...
- Java基础入门 - 简介
官网:https://www.oracle.com Java分为三个体系: JavaEE: Java Platform, Enterprise Edition, Java平台企业版 JavaSE: J ...
- java基础集合简介Map(三)下
--Map接口简介 今天来看一看map集合,map映射接口,用于存放键值对,<key,value>,通过key来查找value,顾名思义key不能为空,唯一且不重复,不然底层怎么查呢! 可 ...
- java基础集合简介Set(三)中
今天主要说夏set集合,每天抽出一个小时总结下,生活会更加美好! --< java.util >-- Set接口: 数据结构:数据的存储方式: Set接口中的方法和Collection中方 ...
- 第七章 java基础类库
1. 日期时间: 用Calendar类. 2. 分隔符:空格.tab.回车. 3. Scanner:读取键盘输入.读取文件. 4. 系统类: System Runtime. 5. 所有的java类都 ...
- Java基础类库
1 main方法 运行java程序的参数: 下面详细讲解main 方法为什么采用这个方法签名 1.public 修饰符:Java类由jvm调用,为了让jvm可以自由调用这个main()方 ...
随机推荐
- A brief introduction to weakly supervised learning(简要介绍弱监督学习)
by 南大周志华 摘要 监督学习技术通过学习大量训练数据来构建预测模型,其中每个训练样本都有其对应的真值输出.尽管现有的技术已经取得了巨大的成功,但值得注意的是,由于数据标注过程的高成本,很多任务很难 ...
- 【Spring源码分析】原型Bean实例化过程、byName与byType及FactoryBean获取Bean源码实现
原型Bean加载过程 之前的文章,分析了非懒加载的单例Bean整个加载过程,除了非懒加载的单例Bean之外,Spring中还有一种Bean就是原型(Prototype)的Bean,看一下定义方式: & ...
- 在hive下使用dual伪表
[hive@nn1 ~]$ touch dual.txt[hive@nn1 ~]$ echo 'X' >dual.txt hive> load data local inpath '/ho ...
- PAT乙级-1056. 组合数的和(15)
给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字.要求所有可能组合出来的2位数字的和.例如给定2.5.8,则可以组合出:25.28.52.58.82.85,它们的和为330. 输入 ...
- 1111 WordReplace
#include<iostream> #include<string> using namespace std; int main() { string sa,sb,s; wh ...
- sublime COMMAND + B 调用 python3 运行
用sublime写了python3的代码,COMMAND + B运行调用 PYTHON3 我们先来新建一个sublime build system 然后自动打开了一个文本,清空并写入以下内容: { & ...
- 【Python】 文件目录比较工具filecmp和difflib
在一些运维场景中,常常需要比较两个环境中的应用目录结构(是否有文件/目录层面上的增删)以及比较两个环境中同名文件内容的不同(即文件层面上的改).Python自带了两个内建模块可以很好地完成这个工作,f ...
- Java几种建立实例的方法
1.new something obj=new something(); 2.clone 根据现有的对象实例来建立里一个新对象实例. 只限于实现了java.lang.Cloneable接口的类.否 ...
- mysql新手入门随笔3
#求最高工资的员工信息 SELECT * FROM emp WHERE sal = (SELECT max(sal) FROM emp); #删除工资最低的员工信息 DELETE FROM emp W ...
- java排序算法(七):折半插入排序
java排序算法(七):折半插入排序 折半插入排序法又称为二分插入排序法,是直接插入排序法的改良版本,也需要执行i-1趟插入.不同之处在于第i趟插入.先找出第i+1个元素应该插入的位置.假设前i个数据 ...