资讯专栏INFORMATION COLUMN

JavaAPI学习——java.lang(一)

roland_reed / 1400人阅读

摘要:一接口能够被添加字符序列和字符的对象。对于多线程访问而言没必要是安全的。是值的一个可读序列。此接口对许多不同种类的序列提供统一的只读访问。如果该对象小于等于或大于指定对象,则分别返回负整数零或正整数。

一、接口 1、Appendable

能够被添加字符序列(CharSequence)和字符(char)的对象。CharSequence已知实现的类有:CharBuffer、Segment、String、StringBuffer和StringBuilder。

Appendable 对于多线程访问而言没必要是安全的。线程安全由扩展和实现此接口的类负责。

接口所包含的方法:Appendabel append(Char c);Appendabel append(CharSequence csq);Appendable append(CharSequence csq,int start,int end);注意带有位置参数的方法,不是在对象的start到end位置插入csq字符序列,而是向对象添加csq字符序列的子序列,即start和end参数是csq的位置信息。

已知实现此接口的类有:BufferedWriter, CharArrayWriter, CharBuffer, FileWriter, FilterWriter, LogStream, OutputStreamWriter, PipedWriter, PrintStream, PrintWriter, StringBuffer, StringBuilder, StringWriter, Writer,即这些类以及这些类的子类可以使用append方法向该对象中添加Char,CharBuffer,String,StringBuffer,StringBuilder,Segment。

2、CharSequence

harSequence 是 char 值的一个可读序列。此接口对许多不同种类的 char 序列提供统一的只读访问。

CharSequence已知实现的类有:CharBuffer、Segment、String、StringBuffer和StringBuilder。

建议不要使用CharSequence的实例作为集合(Set)中的值或者映射(Map)中的键,因为该接口的实现,通常没有定义equels 和 hashCode方法,无法准确的测试两个对象的相等性。

3、AutoCloseable

一个当资源(文件或者socket句柄)没有被关闭前,握有该资源的对象。

如果该接口的实现在一个带资源的try语句(try-with-resource)的资源定义头部被声明,当try块退出时,会自动调用AutoCloseable的close方法,这样可以及时释放资源,避免资源耗尽和其它异常的发生。

该接口只有close一个方法。如果在带资源的try语句块中抛出一个异常,而且close方法也抛出一个异常,那么try语句块中的异常会被抛出,而close方法抛出的异常会被抑制。这个异常会被捕获,并由addSuppressed方法添加到原来的异常中,如果想要获取这个异常,可以调用getSuppressed方法,它会得到从close方法抛出并被抑制的异常列表。

4、Cloneable

实现该接口的类,可以合法的调用Object.clone()方法来对实例按字段进行复制。

没有实现该接口的类,调用Object.clone()方法,将会抛出 CloneNotSupportedException 异常。

实现该接口的类,应该重写Object.clone()方法作为公共方法。

该接口没有clone方法,clone方法属于Object类。

5、Compareable

该接口把整体排序加到实现该接口的所有类上。这种排序被称作类的自然排序,类的compareTo方法被称作它的自然比较方法。

实现此接口的对象列表(和数组)可以通过 Collections.sort(和 Arrays.sort)进行自动排序。实现此接口的对象可以用作有序映射中的键或有序集合中的元素,无需指定比较器

int compareTo(T o):比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68285.html

相关文章

  • JavaAPI学习——java.lang(三)

    摘要:中的枚举是一个类,所以枚举也可一后构造函数和其他的方法只是枚举继承了类,所以它不能再继承其它的类。如果给每个枚举值指定属性,则必须给枚举类提供枚举值属性对应数据类型的构造方法。红色蓝色白色运行的结果为蓝色 二、类 1、Enum 枚举 java 语言所有枚举类型的公共类; 枚举用来替换使用常量表示列入颜色、方式、类别等数量有限,形式离散有表示明确的量; 枚举是类型安全的,超出枚举类型的...

    ranwu 评论0 收藏0
  • JavaAPI学习——java.lang(二)

    摘要:已知常用子接口实现该接口的类可以成为语句的目标唯一方法返回一个在一组类型的元素上进行迭代的迭代器。使用遍历对象判断是否存在下一个元素获取下一个元素移除该元素为类专门创建的接口。 6 Iterable 已知常用子接口:Collection、List、Set; 实现该接口的类可以成为foreach 语句的目标 List list = new ArrayList(); for(List ...

    princekin 评论0 收藏0
  • Java的类加载机制

    摘要:如果需要支持类的动态加载或需要对编译后的字节码文件进行解密操作等,就需要与类加载器打交道了。双亲委派模型,双亲委派模型,约定类加载器的加载机制。任何之类的字节码都无法调用方法,因为该方法只能在类加载的过程中由调用。 jvm系列 垃圾回收基础 JVM的编译策略 GC的三大基础算法 GC的三大高级算法 GC策略的评价指标 JVM信息查看 GC通用日志解读 jvm的card table数据...

    aervon 评论0 收藏0
  • Elasticsearch入门学习(四):使用javaAPI学习ES

    摘要:一依赖刚开始少这个包创建索引失败官方文档并没有给这个提示二开始之前的准备官方文档连接操作所用到的实体类三关于索引的操作官方文档新增索引索引名称分片副本内容查询指定索引索引名称删除索引四关于文档的操作官方文档创建文档索引名称前 一、Maven依赖 org.elasticsearch elasticsearch 7.1.0...

    kun_jian 评论0 收藏0
  • 慕课网_《细说多线程之Thread VS Runnable》学习总结

    摘要:时间年月日星期六说明本文部分内容均来自慕课网。慕课网教学源码无学习源码第一章课前准备前言课程说明比较和这两种线程创建的方式,需要知道和的基本创建方式。一旦主线程获取到了用户的输入,这时候,阻塞就会解除掉,主线程继续运行,直到结束。 时间:2017年07月08日星期六说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学源码:无学习源码:https://g...

    netScorpion 评论0 收藏0

发表评论

0条评论

roland_reed

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<