首页 > 代码库 > Java千百问_09基础类库(001)_lang包有什么功能

Java千百问_09基础类库(001)_lang包有什么功能

点击进入_更多_Java千百问-基础类库

1、lang包有什么功能

java.lang包是java语言的核心,它提供了java中的基础类。包括基本Object类、Class类、String类、基本类型的包装类、基本的数学类等等最基本的类。我们介绍一下Java 8中的java.lang包。主要类如下图:

技术分享?

大体将java.lang包分为三类:类型、工具、系统,下面分别介绍其中比较常用的类:

类型

  1. 对象基类
    Object,是java.lang的根类,也是所有类的超类。


  2. Class,用来表示类和接口的类型。Class对象在类加载时由JVM调用类加载器中的defineClass方法自动构造。
    ClassLoader,负责加载类。
    Compiler,作为编译器的占位符,它不做任何事情,仅用来支持Java到本机代码的编译器及相关服务。

  3. 基本类型
    基本类型的包装类,包括Boolean、Character、Byte、Short、Integer、Long、Float、Double,其中数值类型均即成Number类。了解包装器看这里:什么是基本类型包装器
    String,字符串类。了解字符串看这里:String是什么

  4. 字符序列
    StringBuffer、StringBuilder,可变的字符序列。具体区别看这里:StringBuffer/StringBuilder有什么区别
  5. 枚举
    Enum,是所有枚举类型的公共基类。


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

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

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

工具

  1. 数学
    Math、StrictMath,提供了基本的数字操作,如指数、对数、平方根和三角函数。一般情况下,Math调用StrictMath的方法来完成实现。java中还有一个java.math包,这个包主要提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。

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

  3. 注解
    Override,标记类中方法是实现/重写父类的方法。
    SuppressWarnings,取消对被标记的元素的警告。了解Java注解看这里:注解是什么
    系统

  4. 进程
    Process,进程抽象类。
    ProcessBuilder,用于创建操作系统进程。
    ProcessEnvironment,进程的运行环境参数。
    ProcessImpl,进行接口的实现类。

  5. 线程
    Thread,进程中的执行线程。
    ThreadGroup,线程组,表示一个线程的集合。它构成一个树状结构,可以包含其他线程组,除了根节点的线程组,每个线程组都具有父线程组。
    ThreadLocal,提供线程的变量。

  6. 运行
    Runnable,可运行接口,所有Thread都应实现它。
    Runtime,运行时类,将应用程序与其运行的环境相关联。
    RuntimePermission,用于运行时权限。
    System,系统级的很多属性和控制方法都放置在该类的内部。

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

  8. 异常
    Throwable,异常基类,Java中所有异常都继承于它。了解更多异常看这里:什么是java中的异常

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

    Java千百问_09基础类库(001)_lang包有什么功能