Класс Card
public abstract class Card extends Object
CardTerminal.connect().- С версии:
- 1.6
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает новый объект Card. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract void |
beginExclusive() |
Запрашивает исключительный доступ к этой карте. |
abstract void |
disconnect |
Разрывает соединение с этой картой. |
abstract void |
endExclusive() |
Освобождает исключительный доступ, ранее предоставленный с помощью beginExclusive. |
abstract ATR |
getATR() |
Возвращает ATR этой карты. |
abstract CardChannel |
getBasicChannel() |
Возвращает CardChannel для базового логического канала. |
abstract String |
getProtocol() |
Возвращает протокол, используемый этой картой. |
abstract CardChannel |
openLogicalChannel() |
Открывает новый логический канал карты и возвращает его. |
abstract byte[] |
transmitControlCommand |
Передает управляющую команду терминальному устройству. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарел, будет удален: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
Card
protected Card()
Этот конструктор вызывается только подклассами. Приложению следует вызвать метод CardTerminal.connect(), чтобы получить объект Card.
Подробное описание методов
getATR
public abstract ATR getATR()
- Возвращает:
- ATR этой карты.
getProtocol
public abstract String getProtocol()
- Возвращает:
- протокол, используемый этой картой, например "T=0" или "T=1"
getBasicChannel
public abstract CardChannel getBasicChannel()
- Возвращает:
- CardChannel для базового логического канала
- Вызывает исключение:
-
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения -
IllegalStateException— если объект этой карты был освобожден вызовом метода disconnect()
openLogicalChannel
public abstract CardChannel openLogicalChannel() throws CardException
MANAGE CHANNEL, которая должна использовать формат [00 70 00 00 01].- Возвращает:
- открытый логический канал
- Вызывает исключение:
-
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения -
CardException— если не удалось открыть новый логический канал -
IllegalStateException— если объект этой карты был освобожден вызовом метода disconnect()
beginExclusive
public abstract void beginExclusive() throws CardException
После вызова потоком beginExclusive только этот поток может обмениваться данными с картой до тех пор, пока он не вызовет endExclusive. Другие потоки, пытающиеся выполнить обмен данными, получат исключение CardException.
Приложения должны гарантировать корректное освобождение исключительного доступа. Для этого вызовы beginExclusive() и endExclusive можно поместить в блок try ... finally.
- Вызывает исключение:
-
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения -
CardException— если исключительный доступ уже установлен или его не удалось установить -
IllegalStateException— если объект этой карты был освобожден вызовом метода disconnect()
endExclusive
public abstract void endExclusive() throws CardException
beginExclusive.- Вызывает исключение:
-
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения -
IllegalStateException— если текущий поток не имеет исключительного доступа к этой карте или если объект этой карты был освобожден вызовом метода disconnect() -
CardException— если операция завершилась неудачно
transmitControlCommand
public abstract byte[] transmitControlCommand(int controlCode, byte[] command) throws CardException
Это можно использовать, например, для управления функциями терминала, такими как встроенная клавиатура для ввода PIN-кода или биометрические средства.
- Параметры:
-
controlCode— управляющий код команды -
command— данные команды - Возвращает:
- ответ терминального устройства
- Вызывает исключение:
-
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения -
NullPointerException— если команда равна null -
CardException— если операция с картой завершилась неудачно -
IllegalStateException— если объект этой карты был освобожден вызовом метода disconnect()
disconnect
public abstract void disconnect(boolean reset) throws CardException
- Параметры:
-
reset— следует ли сбросить карту после отключения. - Вызывает исключение:
-
CardException— если операция с картой завершилась неудачно -
SecurityException— если существует SecurityManager и у вызывающего кода нет необходимого разрешения
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.