Module  java.smartcardio
软件包  javax.smartcardio

Class ResponseAPDU

  • All Implemented Interfaces:
    Serializable


    public final class ResponseAPDU
    extends Object
    implements Serializable
    符合ISO / IEC 7816-4规定的响应APDU。 它由条件体和两字节预告片组成。 该类不尝试验证APDU对语义有效的响应进行编码。

    这个类的实例是不可变的。 在通过字节数组传入或传出数据的地方,执行防御性克隆。

    从以下版本开始:
    1.6
    另请参见:
    CommandAPDUCardChannel.transmitSerialized Form
    • 构造方法摘要

      构造方法  
      Constructor 描述
      ResponseAPDU​(byte[] apdu)
      从包含完整的APDU内容(条件体和尾迹)的字节数组构造一个ResponseAPDU。
    • 方法摘要

      所有方法  接口方法  具体的方法 
      Modifier and Type 方法 描述
      boolean equals​(Object obj)
      将指定的对象与此响应APDU进行比较以获得相等性。
      byte[] getBytes​()
      返回此APDU中的字节的副本。
      byte[] getData​()
      返回响应正文中数据字节的副本。
      int getNr​()
      返回响应主体(Nr)中的数据字节数,如果此APDU没有正文,则返回0。
      int getSW​()
      将状态字节SW1和SW2的值作为单个状态字SW返回。
      int getSW1​()
      将状态字节SW1的值作为0到255之间的值返回。
      int getSW2​()
      将状态字节SW2的值作为0和255之间的值返回。
      int hashCode​()
      返回此响应APDU的哈希码值。
      String toString​()
      返回此响应APDU的字符串表示形式。
    • 构造方法详细信息

      • ResponseAPDU

        public ResponseAPDU​(byte[] apdu)
        从包含完整的APDU内容(条件体和尾迹)的字节数组构造一个ResponseAPDU。

        请注意,字节数组被克隆以防止后续修改。

        参数
        apdu - 完整的响应APDU
        异常
        NullPointerException - 如果 NullPointerException为空
        IllegalArgumentException - 如果apdu.length小于2
    • 方法详细信息

      • getNr

        public int getNr​()
        返回响应主体(Nr)中的数据字节数,如果此APDU没有正文,则返回0。 此通话相当于getData().length
        结果
        响应主体中的数据字节数,如果此APDU没有正文,则为0。
      • getData

        public byte[] getData​()
        返回响应正文中数据字节的副本。 如果这个APDU没有body,这个方法返回一个长度为零的字节数组。
        结果
        响应主体中的数据字节的副本或空字节数组,如果该APDU没有正文。
      • getSW1

        public int getSW1​()
        将状态字节SW1的值作为0到255之间的值返回。
        结果
        状态字节SW1的值为0到255之间的值。
      • getSW2

        public int getSW2​()
        将状态字节SW2的值作为0和255之间的值返回。
        结果
        状态字节SW2的值为0到255之间的值。
      • getSW

        public int getSW​()
        将状态字节SW1和SW2的值作为单个状态字SW返回。 它定义为(getSW1() << 8) | getSW2()
        结果
        状态字SW的值。
      • getBytes

        public byte[] getBytes​()
        返回此APDU中的字节的副本。
        结果
        该APDU中的字节的副本。
      • toString

        public String toString​()
        返回此响应APDU的字符串表示形式。
        重写:
        toStringObject
        结果
        该响应APDU的字符串表示形式。
      • equals

        public boolean equals​(Object obj)
        将指定的对象与此响应APDU进行比较以获得相等性。 如果给定对象也是一个ResponseAPDU,并且其字节与该ResponseAPDU中的字节相同,则返回true。
        重写:
        equalsObject
        参数
        obj - 要与该响应APDU相等的对象进行比较
        结果
        如果指定的对象等于该响应APDU,则为true
        另请参见:
        Object.hashCode()HashMap