zoukankan      html  css  js  c++  java
  • 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 序列提供统一的只读访问。CharBufferStringStringBufferStringBuilder都实现此接口。

    此接口定义的方法有:

    char

    charAt(int index) 返回指定索引的 char 值。

     int

    length() 返回此字符序列的长度。

     CharSequence

    subSequence(int start, int end)

    返回一个新的 CharSequence,它是此序列的子序列。

     String

    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" 语句的目标。

    此接口定义的方法了一个方法:

    Iterator<Titerator()

    返回一个在一组 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学习01-使用maven插件tomcat搭建web maven项目
    Anaconda3安装及使用
    python标准日志模块logging及日志系统设计
    python traceback捕获并打印异常
    python time
    PIL 中的 Image 模块
    python zipfile使用
    PHP 判断用户是否手机访问
    php数组相加 两个数组键名相同 后者不能覆盖前者
    解决Ubuntu Server 12.04换了网卡MAC地址后 网络不可用的问题.
  • 原文地址:https://www.cnblogs.com/wxishang1991/p/4500035.html
Copyright © 2011-2022 走看看