Java.lang包的接口解读
Java.lang包中提供了八个接口:
1、Appendable
能够被追加 char 序列和值的对象。如果某个类的实例打算接收来自 Formatter的格式化输出,那么该类必须实现 Appendable 接口。如StringBuffer就实现了此接口。此接口定义了三个append方法:
Appendable append(CharSequence csq,int start,int end)throws IOException
Appendable append(CharSequence csq,int start,int end)throws IOException
Appendable append(char c)throws IOException
猜猜它们要实现什么功能?
2、CharSequence
是 char 值的一个可读序列。此接口对许多不同种类的 char 序列提供统一的只读访问。CharBuffer, String, StringBuffer, StringBuilder都实现此接口。
此接口定义的方法有:
|
char |
charAt(int index) 返回指定索引的 char 值。 |
|
int |
length() 返回此字符序列的长度。 |
|
subSequence(int start, int end) 返回一个新的 CharSequence,它是此序列的子序列。 |
|
|
toString()返回一个包含此序列中字符的字符串,该字符串与此序列的顺序相同。 |
3、Cloneable
实现了 Cloneable 接口,以指示 Object.clone() 方法可以合法地对该类实例进行按字段复制。 如果在没有实现 Cloneable 接口的实例上调用 Object 的 clone 方法,则会导致抛出CloneNotSupportedException 异常。按照惯例,实现此接口的类应该使用公共方法重写Object.clone(它是受保护的)。
此接口不 包含 clone 方法。
4、Comparable<T>
此接口强行对实现它的每个类的对象进行整体排序。此排序被称为该类的自然排序,类的 compareTo 方法被称为它的自然比较方法。实现此接口的对象列表(和数组)可以通过Collections.sort(和 Arrays.sort)进行自动排序。实现此接口的对象可以用作有序映射表中的键或有序集合中的元素,无需指定比较器。
此接口定义的方法了一个方法:
int compareTo(T o)
比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回-1、0、1。
5、Iterable<T>
实现这个接口允许对象成为 "foreach" 语句的目标。
此接口定义的方法了一个方法:
- 返回一个在一组 T 类型的元素上进行迭代的迭代器。
-
- 返回:
- 一个迭代器。
6、Readable
Readable 是一个字符源
此接口定义的方法了一个方法:
int read(CharBuffer cb)
throws IOException
- 试图将字符读入指定的字符缓冲区。缓冲区可用作类似以下字符的存储库:所做的惟一改变是 put 操作的结果。不对缓冲区进行反转或重绕操作。
-
- 参数:
cb- 将要读入字符的缓冲区- 返回:
- 添加到缓冲区的 char 值的数量,如果此字符源位于缓冲区末端,则返回 -1
7、
Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。类必须定义一个称为
run的无参数方法。此接口定义的方法了一个方法:void run()
- 使用实现接口
Runnable的对象创建一个线程时,启动该线程将导致在独立执行的线程中调用对象的run方法。方法
run的常规协定是,它可能执行任何所需的操作。8、Thread.UncaughtExceptionHandler
当 Thread 因未捕获的异常而突然终止时,调用处理程序的接口。
此接口定义的方法了一个方法:
void uncaughtException(Thread t,Throwable e)
- 当给定线程因给定的未捕获异常而终止时,调用该方法。
Java 虚拟机将忽略该方法抛出的任何异常。
Java.lang包的接口解读的更多相关文章
- java.lang包
作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.特性——不用import 2.String String x = "abc"; < ...
- java.lang包【Object类】
基本描述: (1)Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入: (2)Object类是所有Java类的祖先.每个类都使用 Obje ...
- Java.lang 包 (包装类、String类、Math类、Class类、Object类)
Java 的核心 API(Application Programming Interface)是非常庞大的,这给开发者带来了很大的方便. java.lang 包是 Java 的核心类库,它包含了运行 ...
- JDK框架简析--java.lang包中的基础类库、基础数据类型
题记 JDK.Java Development Kit. 我们必须先认识到,JDK不过,不过一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含 ...
- JDK_API剖析之java.lang包
java.lang是Java语言的基础包,默认包中的所有来自动import到你写的类中.(按照字母排序) 1.AbstractMethodError 类.错误 自1.0开始有 继承自Incompati ...
- 【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api
Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- An ...
- Android 网络编程 API笔记 - java.net 包相关 接口 api
Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- An ...
- 简单看看jdk7源码之java.lang包01
从今天开始简单开始读一遍jdk的源码,估计这个时间会很长,慢慢啃吧....(首先说一句抱歉,因为很多图都是直接百度扣的,图太多了不能为每一个图附上原版链接,不好意思!) 在网上看了很多的教程,读源码有 ...
- Java.lang 包 util 包等各个包详解
java.lang 该包提供了 Java 编程的基础类,例如 Object.Math.String.StringBuffer.System.Thread 等,不使用该包就很难编写 Java 代码了. ...
随机推荐
- 012-JDK可视化监控工具-jstack
一.概述 jstack是java虚拟机自带的一种堆栈跟踪工具.jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项&qu ...
- ceshi1
图片素材
- Codeforces Round #385 (Div. 1) C. Hongcow Buys a Deck of Cards
地址:http://codeforces.com/problemset/problem/744/C 题目: C. Hongcow Buys a Deck of Cards time limit per ...
- uva 11426 GCD - Extreme (II) (欧拉函数打表)
题意:给一个N,和公式 求G(N). 分析:设F(N)= gcd(1,N)+gcd(2,N)+...gcd(N-1,N).则 G(N ) = G(N-1) + F(N). 设满足gcd(x,N) 值为 ...
- mysql 系列文章推荐
1. mysql日志详细解析 http://www.cnblogs.com/wangkongming/p/3684950.html 2. mysql 主从同步实验 http://pmg ...
- angularjs中directive声明scope对象的用法
总的来说用法 分三种: >1: scope: false --> 继承父域,实现 双向数据绑定 示例代码 可自测: <!DOCTYPE html> <html lang ...
- SDWebImage 加载Https自签名证书时的图片问题
你是否遇到了这种情况,好不容易把自签名HTTPS证书配置好了,访问https接口也成功了,但是图片加载不出来? 传了SDWebImageAllowInvalidSSLCertificates 还是没效 ...
- ssi include返回404页面
项目中index.html中包含<!--#include virtual="/commonfrag/djdzkan/recomm_www_info.inc" --> ...
- Linux下挂载windows的共享文件夹
环境说明: 由于领导要求:现需要将某Linux服务器下的一个文件移动到某windows服务器下(服务器均在机房托管,要远程操作) 由于操作为一次性,则决定在windows下建立一个共享文件夹,linu ...
- 关于在asp.net添加jQuery的智能提示
如果是vs2008以后的版本,一般都会支持jQuery自动提示代码功能,不支持也没关系,很简单的操作就能支持: 1.先为vs下载一个补丁,地址为:http://code.msdn.microsoft. ...