当前位置: 首页 > news >正文

java.lang 包详解

java.lang 是 Java 最核心的包,默认自动导入到所有 Java 程序中。它包含 Java 语言的基础类和接口,是 Java 编程的基础。


1. 核心类概览

java.lang 包含以下关键类:

类别主要类
基础类ObjectClassVoid
基本数据类型包装类IntegerLongDoubleBoolean 等
字符串处理StringStringBuilderStringBuffer
系统相关SystemRuntime
数学运算MathStrictMath
异常处理ThrowableExceptionErrorRuntimeException
线程相关ThreadRunnableThreadLocal
枚举和注解EnumAnnotation
函数式接口FunctionalInterface (Java 8+)

2. 关键类详解

(1)Object 类

  • 所有类的超类,Java 中所有类都直接或间接继承 Object

  • 核心方法

    boolean equals(Object obj)  // 比较对象是否相等
    int hashCode()              // 返回对象的哈希码
    String toString()           // 返回对象的字符串表示
    Class<?> getClass()         // 返回对象的运行时类
    protected Object clone()    // 创建并返回对象的副本
    void notify()               // 唤醒等待该对象监视器的线程
    void wait()                 // 使当前线程等待

(2)String 类

  • 不可变字符序列,线程安全。

  • 常用方法

    char charAt(int index)          // 返回指定索引的字符
    int length()                    // 返回字符串长度
    String substring(int begin, int end)  // 返回子串
    boolean equals(Object obj)      // 比较字符串内容
    int compareTo(String another)   // 按字典序比较
    String toLowerCase()            // 转小写
    String toUpperCase()            // 转大写
    String trim()                   // 去除首尾空格
    String[] split(String regex)    // 按正则分割字符串
    boolean startsWith(String prefix)  // 检查前缀
    boolean endsWith(String suffix) // 检查后缀

(3)StringBuilder 和 StringBuffer

  • 可变字符序列

    • StringBuilder非线程安全,性能更高)

    • StringBuffer线程安全,性能稍低)

  • 常用方法

    append(String str)   // 追加字符串
    insert(int offset, String str)  // 插入字符串
    delete(int start, int end)      // 删除子串
    reverse()           // 反转字符串
    toString()          // 转为 String

(4)System 类

  • 提供系统级操作

    static long currentTimeMillis()  // 当前时间(毫秒)
    static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)  // 数组拷贝
    static void exit(int status)     // 终止 JVM
    static Properties getProperties()  // 获取系统属性
    static String lineSeparator()    // 获取换行符

(5)Math 类

  • 数学运算工具

    static double sin(double a)      // 正弦
    static double cos(double a)      // 余弦
    static double sqrt(double a)     // 平方根
    static double pow(double a, double b)  // a 的 b 次方
    static int max(int a, int b)     // 最大值
    static int min(int a, int b)     // 最小值
    static double random()           // 返回 [0.0, 1.0) 随机数

(6)Thread 类

  • 线程管理

    void start()          // 启动线程
    void run()            // 线程执行体
    static void sleep(long millis)  // 线程休眠
    void join()           // 等待线程终止
    static Thread currentThread()  // 获取当前线程

(7)Class 类

  • 运行时类信息

    static Class<?> forName(String className)  // 加载类
    Object newInstance()  // 创建类实例(已废弃,推荐用 Constructor)
    String getName()      // 获取类名
    Class<?> getSuperclass()  // 获取父类

(8)Throwable 类

  • 所有错误(Error)和异常(Exception)的超类

    String getMessage()   // 返回错误信息
    void printStackTrace()  // 打印堆栈跟踪

3. 基本数据类型包装类

Java 为每个基本数据类型提供了包装类:

基本类型包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

常用方法

Integer.parseInt("123")  // 字符串转 int
Double.valueOf("3.14")   // 字符串转 Double
Character.isDigit('9')   // 判断是否是数字
Boolean.TRUE             // 返回 true

4. 自动装箱(Autoboxing)和拆箱(Unboxing)

Java 5+ 支持自动转换基本类型和包装类:

Integer num = 10;  // 自动装箱(int → Integer)
int n = num;       // 自动拆箱(Integer → int)

5. 异常体系

java.lang 定义了 Java 的异常体系:

Throwable
├── Error (如 `OutOfMemoryError`)
└── Exception├── RuntimeException (如 `NullPointerException`)└── Checked Exception (如 `IOException`)

6. 总结

  • java.lang 是 Java 最核心的包,包含所有基础类。

  • Object 是所有类的父类,提供 equals()hashCode()toString() 等方法。

  • String 是不可变的StringBuilder 和 StringBuffer 是可变字符串。

  • System 提供系统操作Math 提供数学计算。

  • 基本数据类型有对应的包装类(如 IntegerDouble)。

  • 异常体系基于 Throwable,分为 Error 和 Exception

java.lang 是 Java 编程的基础,几乎所有 Java 程序都会用到它。

http://www.dtcms.com/a/499913.html

相关文章:

  • GTA5浏览器网站建设中建设银行网站定酒店
  • C++编程学习(第38天)
  • 许昌做网站公司哪家专业找装修公司的网站
  • 问题“A fatal error occurred: Failed to connect to ESP32”分析解决
  • 基数排序基础透彻理解
  • 批处理重命名遇到的几个问题
  • 网站风格的设计微信小程序开发费用一览表
  • 门户网站开发框架应用网站
  • 做网站如何调字体格式衡阳做网站ss0734
  • 云南省城乡和住房建设厅网站大连seo建站公司
  • 微服务降本增效措施
  • [优选算法专题四.前缀和——NO.27 寻找数组的中心下标]
  • 多模块exe文件和ini文件文件之间是如何耦合的
  • 【MySQL】数据库的相关操作
  • 房地产网站源码Wordpress页面无侧边栏
  • 营销神器官方网站竞价单页模板
  • Mysql初阶第十一讲:Mysql视图特性与用户管理
  • 临沂h5建站网站建设企业网银e路通
  • gpiozero 树莓派(Raspberry Pi)官方推荐的 Python GPIO 控制库
  • 如何快速搭建个人网站wordpress 发通知
  • 深圳网站建设公司收费手机排行榜软件
  • ModuleNotFoundError: No module named ‘google.protobuf‘
  • 江苏企业网站排名优化wordpress文章序号排列
  • 网站空间使用方法wordpress php版本号
  • 网站建设需要学什么证苏州保洁公司诗雨
  • 网站用户推广哈尔滨快速建站服务
  • WinForm自定义组件双击事件
  • 智慧养老平台|基于SprinBoot+vue的智慧养老平台系统(源码+数据库+文档)
  • 佛山北京网站建设公司的wordpress主机名
  • 网站建设app小程序传媒公司网站