java核心类库

Java 核心类库中常用类和工具类的实现和实践。

1. Java 核心类库有哪些重要的包?它们的作用是什么?

  • java.lang:包含 Java 核心类,如 StringMathObjectThread 等。
  • java.util:包含常用的工具类和集合类,如 ArrayListHashMapCollectionsDate 等。
  • java.io:用于输入输出操作,如文件读写,包含类如 FileInputStreamOutputStream 等。
  • java.nio:提供非阻塞 I/O 操作,如 BufferChannel
  • java.net:用于网络编程,如 SocketURL
  • java.time:提供日期和时间的现代化 API。
  • java.sql:用于数据库编程。
  • java.util.concurrent:用于并发编程。

2. Object 类有哪些重要的方法?这些方法的用途是什么?

Object 是所有类的父类,以下是其重要方法:

  • equals(Object obj):比较两个对象是否相等。
  • hashCode():返回对象的哈希值,用于集合中的快速访问(如 HashMap)。
  • toString():返回对象的字符串表示。
  • clone():创建并返回对象的副本。
  • getClass():返回对象的运行时类。
  • wait()notify()notifyAll():用于线程间通信。

3. String 类为什么是不可变的?

String 是不可变的(immutable),主要原因如下:

  • 安全性:在多线程环境下,不可变对象是线程安全的。
  • 性能优化String 被广泛用于字符串池(String Pool)优化,重复的字符串共享相同的对象。
  • 哈希值缓存String 的哈希值是不可变的,因此常用于集合(如 HashMap)。
String s1 = "Hello";
String s2 = "Hello"; 
System.out.println(s1 == s2); // true,因为两个字符串引用同一
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值