一、介绍

java.lang包是java语言的核心,它提供了java中的基础类。我们使用java.lang包下的类时,是不需要import类的,默认导入。

包括基本Object类、Class类、String类、基本类型的包装类、基本的数学类等等最基本的类。

我们介绍一下Java 8中的java.lang包。主要类如下图:

java中lang的范围 java的lang包有哪些类_Java

下面分别介绍其中比较常用的类:

一、类型

对象基类

Object,是java.lang的根类,也是所有类的超类。

Class,用来表示类和接口的类型。Class对象在类加载时由JVM调用类加载器中的defineClass方法自动构造。

ClassLoader,负责加载类。

Compiler,作为编译器的占位符,它不做任何事情,仅用来支持Java到本机代码的编译器及相关服务。

基本类型

基本类型的包装类,包括Boolean、Character、Byte、Short、Integer、Long、Float、Double,其中数值类型均继承Number类。

String,字符串类。

字符序列

StringBuffer、StringBuilder,可变的字符序列。

枚举

Enum,是所有枚举类型的公共基类。

Package,包含了有关Java包(package)的信息。

无类型

Void,标示关键字void的Class对象的引用,不可被实例化。

迭代器

Iterable,可迭代接口,实现接口可以使用迭代器进行对象遍历。

二、工具

数学

Math、StrictMath,提供了基本的数字操作,如指数、对数、平方根和三角函数。一般情况下,Math调用StrictMath的方法来完成实现。

java中还有一个java.math包,这个包主要提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类,一般用于专业的数学运算。

安全

SecurityManager,允许应用程序实现安全策略的类。

注解

Override,标记类中方法是实现/重写父类的方法。

SuppressWarnings,取消对被标记的元素的警告。

三、系统

进程

Process,进程抽象类。

ProcessBuilder,用于创建操作系统进程。

ProcessEnvironment,进程的运行环境参数。

ProcessImpl,进行接口的实现类。

线程

Thread,进程中的执行线程。

ThreadGroup,线程组,表示一个线程的集合。它构成一个树状结构,可以包含其他线程组,除了根节点的线程组,每个线程组都具有父线程组。

ThreadLocal,提供线程的变量。

运行

Runnable,可运行接口,所有Thread都应实现它。

Runtime,运行时类,将应用程序与其运行的环境相关联。

RuntimePermission,用于运行时权限。

System,系统级的很多属性和控制方法都放置在该类的内部。

堆栈

StackTraceElement,堆栈跟踪中的元素,它的每个实例都表示单独的一个栈帧(表示一个方法调用)。

异常

Throwable,异常基类,Java中所有异常都继承于它。