8c1dea14

Объекты JavaArray и JavaObject


В большинстве случаев, если Вы передаёте JavaArray или JavaObject JavaScript в качестве параметра Java-методу, Java просто снимает оболочку с объекта; в некоторых случаях объект приводится к другому типу данных в соответствии с правилами, описанными в следующей таблице:

Тип Java-параметра

Правила Конверсии

Любой интерфейс или класс, совместимый при присвоении с развёрнутым /unwrapped объектом.

Объект разворачивается.

java.lang.String

Объект разворачивается, вызывается метод toString развёрнутого Java-объекта, и результат возвращается как новый экземпляр объекта java.lang.String.

byte
char
double
float
int
long
short



Объект разворачивается, и возникает одна из следующих ситуаций:

Если развёрнутый Java-объект имеет метод doubleValue, the JavaArray или JavaObject конвертируется в значение, возвращаемое этим методом.

Если развёрнутый Java-объект не имеет метода doubleValue, возникает ошибка.

boolean

В JavaScript 1.3 и более поздних версиях, объект разворачивается, и возникает одна из следующих ситуаций:

 

    Если объект - null, он конвертируется в false.

Если объект имеет какое-либо другое значение, он конвертируется в true.

В JavaScript 1.2 и ранее, объект разворачивается, и возникает одна из следующих ситуаций:

 

    Если развёрнутый объект имеет метод booleanValue, the исходный объект конвертируется в return-значение.

Если развёрнутый объект не имеет метода booleanValue, конвертация терпит неудачу.

Интерфейс или класс совместим для присвоения с развёрнутым объектом, если развёрнутый объект является экземпляром типа Java-параметра. То есть, следующий оператор должен возвращать true:

развёрнутыйОбъект instanceof параметраТип



Содержание раздела