JAVA基础篇-JDK提供的常⽤类
JAVA是⾯向对象的语⾔,因此在JDK中提供了很多已经封装好的类,⽤户只需知道怎么使⽤即可,可以⼤⼤提⾼效率。下⾯是JDK中提供的常⽤的类:
Object类
是类层次结构的根类。每个类都使⽤ Object 作为超类。所有对象(包括数组)都实现这个类的⽅法。
Scanner类
可以使⽤正则表达式来解析基本类型和字符串的简单⽂本扫描器。
System类
在 System 类提供的设施中,有标准输⼊、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载⽂件和库的⽅法;还有快速复制数组的⼀部分的实⽤⽅法。
String类
String 类代表字符串。Java 程序中的所有字符串字⾯值(如 “abc” )都作为此类的实例实现。字符串是
常量;它们的值在创建之后不能更改。字符串缓冲区⽀持可变的字符串。因为 String 对象是不可变的,所以可以共享。
StringBuffer类
线程安全的可变字符序列。⼀个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些⽅法调⽤可以改变该序列的长度和内容。
StringBuilder类
⼀个可变的字符序列。此类提供⼀个与 StringBuffer 兼容的 API,但不保证同步。该类被设计⽤作 StringBuffer 的⼀个简易替换,⽤在字符串缓冲区被单个线程使⽤的时候(这种情况很普遍)。如果可能,建议优先采⽤该类,因为在⼤多数实现中,它⽐ StringBuffer 要快。
Arrays类
此类包含⽤来操作数组(⽐如排序和搜索)的各种⽅法。此类还包含⼀个允许将数组作为列表来查看的静态⼯⼚。
Integer类
Integer 类在对象中包装了⼀个基本类型 int 的值。Integer 类型的对象包含⼀个 int 类型的字段。 此外,该类提供了多个⽅法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时⾮常有⽤的其他⼀些常量和⽅法。
Pattern和Matcher类
指定为字符串的正则表达式必须⾸先被编译为此类的实例。然后,可将得到的模式⽤于创建 Matcher 对象,依照正则表达式,该对象可以与任意字符序列匹配。执⾏匹配所涉及的所有状态都驻留在匹配器中,所以多个匹配器可以共享同⼀模式。通过解释 Pattern 对 character sequence 执⾏匹配操作的引擎。
Math类
Math 类包含⽤于执⾏基本数学运算的⽅法,如初等指数、对数、平⽅根和三⾓函数。
Random类
此类的实例⽤于⽣成伪随机数流。
BigDecimal类
bigdecimal转换为integerBigDecimal 类提供以下操作:算术、标度操作、舍⼊、⽐较、哈希算法和格式转换。toString() ⽅法提供 BigDecimal 的规范表⽰形式。
Date类
类 Date 表⽰特定的时间,精确到毫秒。
SimpleDateFormat类
SimpleDateFormat 是⼀个以与语⾔环境有关的⽅式来格式化和解析⽇期的具体类。它允许进⾏格式化(⽇期 -> ⽂本)、解析(⽂本 ->⽇期)和规范化。
Calendar类
Calendar 类是⼀个抽象类,它为特定瞬间与⼀组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 ⽇历字段之间的转换提供了⼀些⽅法,并为操作⽇历字段(例如获得下星期的⽇期)提供了⼀些⽅法。瞬间可⽤毫秒值来表⽰,它是距历元(即格林威治标准时间 1970
年 1 ⽉ 1 ⽇的 00:00:00.000,格⾥⾼利历)的偏移量。
接⼝Collection(集合)
collection的⽗接⼝是iterator接⼝,Collection 表⽰⼀组对象,这些对象也称为 collection 的元素。⼀些 collection 允许有重复的元素,⽽另⼀些则不允许。⼀些 collection 是有序的,⽽另⼀些则是⽆序的。JDK 不提供此接⼝的任何直接 实现:它提供更具体的⼦接⼝(如Set 和 List)实现。此接⼝通常⽤来传递 collection,并在需要最⼤普遍性的地⽅操作这些 collection。
接⼝list(集合)
list接⼝的⽗接⼝是collection接⼝,List 接⼝在 iterator、add、remove、equals 和 hashCode ⽅法的协定上加了⼀些其他约定,超过了 Collection 接⼝中指定的约定。为⽅便起见,这⾥也包括了其他继承⽅法的声明。
ArrayList类
arraylist类是接⼝list接⼝的实现类,List 接⼝的⼤⼩可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接⼝外,此类还提供⼀些⽅法来操作内部⽤来存储列表的数组的⼤⼩。(此类⼤致上等同于 Vector 类,除了此类是不同步的。)
Vector类
Vector 类可以实现可增长的对象数组。与数组⼀样,它包含可以使⽤整数索引进⾏访问的组件。但是,
Vector 的⼤⼩可以根据需要增⼤或缩⼩,以适应创建 Vector 后进⾏添加或移除项的操作。
LinkedList类
List 接⼝的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接⼝外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统⼀的命名⽅法。这些操作允许将链接列表⽤作堆栈、队列或双端队列。此类实现Deque 接⼝,为 add、poll 提供先进先出队列操作,以及其他堆栈和双端队列操作。所有操作都是按照双重链接列表的需要执⾏的。在列表中编索引的操作将从开头或结尾遍历列表(从靠近指定索引的⼀端)。
⽬前为⽌我了解的类和接⼝就只有这些了,当然jdk中提供的类和接⼝还有很多,有成千上万个封装好的,因此最重要的是学会看⽂档:分清类和接⼝,是否为抽象类,其次类继承了哪些接⼝,再者注意接⼝中的⽅法和类中的⽅法的关系,通过多态,向下向上转型是可以转变的,还有就是注意提供的⽅法是否为静态,有⽆构造⽅法等。
上述的所有类和接⼝都在java.util包下:
在util包下⾯提供了很多类和接⼝等,因此当学习⼀定的类和接⼝的使⽤后,可以⾃主的将剩下的类和接⼝都学习完,如下图所⽰:
下图是util包下的分层结构,可以发现都是有联系或者影响的,所有当熟悉每个类和接⼝之后,就可以活学活⽤,那么就慢慢站在⾯向过程的⾓度去思考问题,为什么这么设计这些类?这些类的这种关系是基于什么设计的?等等。
上⾯介绍的这些常⽤类,类中⽅法的使⽤以及注意的问题,我会在下⼀篇介绍到。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。