Spec-Zone.ru › OpenJDK 25

Класс ParameterBlock

java.lang.Object
java.awt.image.renderable.ParameterBlock
Все реализуемые интерфейсы:
Serializable, Cloneable
public class ParameterBlock extends Object implements Cloneable, Serializable
ParameterBlock содержит всю информацию об источниках и параметрах (объектах), необходимую RenderableImageOp или другим классам, обрабатывающим изображения.

Хотя в вектор источников можно поместить произвольные объекты, пользователи этого класса могут накладывать семантические ограничения, например требовать, чтобы все источники были объектами RenderedImage или RenderableImage. Сам ParameterBlock является лишь контейнером и не проверяет типы источников или параметров.

Все параметры в ParameterBlock являются объектами; для удобства доступны методы add и set, принимающие аргументы базового типа и создающие соответствующий подкласс Number (например, Integer или Float). Соответствующие методы get выполняют приведение к более конкретному типу и возвращают значения базового типа; если сохранённые значения имеют неверный тип, будет выброшено исключение. Невозможно различить результаты вызовов «short s; add(s)» и «add(Short.valueOf(s))».

Обратите внимание, что методы get и set работают со ссылками. Поэтому следует быть осторожным и не использовать одни и те же ссылки в нескольких ParameterBlock, если это нежелательно. Например, чтобы создать новый ParameterBlock, равный старому, но с добавленным источником, можно было бы написать:

ParameterBlock addSource(ParameterBlock pb, RenderableImage im) {
    ParameterBlock pb1 = new ParameterBlock(pb.getSources());
    pb1.addSource(im);
    return pb1;
}

Этот код приведёт к побочному эффекту: исходный ParameterBlock будет изменён, поскольку операция getSources возвращает ссылку на его вектор источников. И pb, и pb1 используют один и тот же вектор источников, поэтому изменение любого из них будет видно в обоих.

Правильный способ написать функцию addSource — клонировать вектор источников:

ParameterBlock addSource (ParameterBlock pb, RenderableImage im) {
    ParameterBlock pb1 = new ParameterBlock(pb.getSources().clone());
    pb1.addSource(im);
    return pb1;
}

По этой причине метод clone класса ParameterBlock определён так, чтобы клонировать и вектор источников, и вектор параметров. Стандартное поверхностное клонирование доступно через shallowClone.

Методы addSource, setSource, add и set после добавления аргумента возвращают «this». Это позволяет использовать синтаксис, например:

ParameterBlock pb = new ParameterBlock();
op = new RenderableImageOp("operation", pb.add(arg1).add(arg2));
См. также:
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
protected Vector<Object> parameters
Вектор параметров, не являющихся источниками; в нём хранятся произвольные объекты.
protected Vector<Object> sources
Вектор источников; в нём хранятся произвольные объекты.

Краткое описание конструкторов

Конструктор Описание
ParameterBlock()
Пустой конструктор.
ParameterBlock(Vector<Object> sources)
Создаёт ParameterBlock с заданным вектором источников.
ParameterBlock(Vector<Object> sources, Vector<Object> parameters)
Создаёт ParameterBlock с заданным вектором источников и вектором параметров.

Краткое описание методов

Модификатор и тип Метод Описание
ParameterBlock add(byte b)
Добавляет Byte в список параметров.
ParameterBlock add(char c)
Добавляет Character в список параметров.
ParameterBlock add(double d)
Добавляет Double в список параметров.
ParameterBlock add(float f)
Добавляет Float в список параметров.
ParameterBlock add(int i)
Добавляет Integer в список параметров.
ParameterBlock add(long l)
Добавляет Long в список параметров.
ParameterBlock add(short s)
Добавляет Short в список параметров.
ParameterBlock add(Object obj)
Добавляет объект в список параметров.
ParameterBlock addSource(Object source)
Добавляет изображение в конец списка источников.
Object clone()
Создаёт копию ParameterBlock.
byte getByteParameter(int index)
Вспомогательный метод для получения параметра в виде byte.
char getCharParameter(int index)
Вспомогательный метод для получения параметра в виде char.
double getDoubleParameter(int index)
Вспомогательный метод для получения параметра в виде double.
float getFloatParameter(int index)
Вспомогательный метод для получения параметра в виде float.
int getIntParameter(int index)
Вспомогательный метод для получения параметра в виде int.
long getLongParameter(int index)
Вспомогательный метод для получения параметра в виде long.
int getNumParameters()
Возвращает количество параметров (без учёта исходных изображений).
int getNumSources()
Возвращает количество исходных изображений.
Object getObjectParameter(int index)
Возвращает параметр в виде объекта.
Class<?>[] getParamClasses()
Возвращает массив объектов Class, описывающих типы параметров.
Vector<Object> getParameters()
Возвращает весь вектор параметров.
RenderableImage getRenderableSource(int index)
Возвращает источник в виде RenderableImage.
RenderedImage getRenderedSource(int index)
Возвращает источник в виде RenderedImage.
short getShortParameter(int index)
Вспомогательный метод для получения параметра в виде short.
Object getSource(int index)
Возвращает источник в виде объекта Object общего назначения.
Vector<Object> getSources()
Возвращает весь вектор источников.
void removeParameters()
Очищает список параметров.
void removeSources()
Очищает список исходных изображений.
ParameterBlock set(byte b, int index)
Заменяет объект в списке параметров на Byte.
ParameterBlock set(char c, int index)
Заменяет объект в списке параметров на Character.
ParameterBlock set(double d, int index)
Заменяет объект в списке параметров на Double.
ParameterBlock set(float f, int index)
Заменяет объект в списке параметров на Float.
ParameterBlock set(int i, int index)
Заменяет объект в списке параметров на Integer.
ParameterBlock set(long l, int index)
Заменяет объект в списке параметров на Long.
ParameterBlock set(short s, int index)
Заменяет объект в списке параметров на Short.
ParameterBlock set(Object obj, int index)
Заменяет объект в списке параметров.
void setParameters(Vector<Object> parameters)
Устанавливает весь вектор параметров в заданное значение.
ParameterBlock setSource(Object source, int index)
Заменяет элемент в списке источников новым источником.
void setSources(Vector<Object> sources)
Устанавливает весь вектор источников в заданное значение.
Object shallowClone()
Создаёт поверхностную копию ParameterBlock.

Методы, объявленные в классе Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

sources

protected Vector<Object> sources
Вектор источников, хранящихся в виде произвольных объектов.

parameters

protected Vector<Object> parameters
Вектор параметров, не являющихся источниками, хранящихся в виде произвольных объектов.

Подробное описание конструкторов

ParameterBlock

public ParameterBlock()
Пустой конструктор.

ParameterBlock

public ParameterBlock(Vector<Object> sources)
Создает ParameterBlock с заданным вектором источников.
Параметры:
sources — Vector исходных изображений

ParameterBlock

public ParameterBlock(Vector<Object> sources, Vector<Object> parameters)
Создает ParameterBlock с заданными векторами источников и параметров.
Параметры:
sources — Vector исходных изображений
parameters — Vector параметров, используемых при операции визуализации

Подробное описание методов

shallowClone

public Object shallowClone()
Создает поверхностную копию ParameterBlock. Векторы источников и параметров копируются по ссылке — добавления и изменения будут видны в обеих версиях.
Возвращает:
копию ParameterBlock в виде объекта.

clone

public Object clone()
Создает копию ParameterBlock. Векторы источников и параметров клонируются, но сами источники и параметры копируются по ссылке. Благодаря этому изменения порядка и количества источников и параметров в клоне не будут видны исходному ParameterBlock. Изменения самих общих источников или параметров по-прежнему будут видны.
Переопределяет:
clone в классе Object
Возвращает:
копию ParameterBlock в виде объекта.
См. также:
  • Cloneable

addSource

public ParameterBlock addSource(Object source)
Добавляет изображение в конец списка источников. Изображение хранится как объект, чтобы в будущем можно было использовать новые типы узлов.
Параметры:
source — объект изображения для сохранения в списке источников.
Возвращает:
новый ParameterBlock, содержащий указанный source.

getSource

public Object getSource(int index)
Возвращает источник как объект общего типа. Вызывающий код должен привести его к подходящему типу.
Параметры:
index — индекс возвращаемого источника.
Возвращает:
Object, представляющий источник, расположенный по указанному индексу в sources Vector.
См. также:
  • setSource(Object, int)

setSource

public ParameterBlock setSource(Object source, int index)
Заменяет запись в списке источников новым источником. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
source — указанное исходное изображение
index — индекс в sources Vector, по которому следует вставить указанный source
Возвращает:
новый ParameterBlock, содержащий указанный source по указанному index.
См. также:
  • getSource(int)

getRenderedSource

public RenderedImage getRenderedSource(int index)
Возвращает источник как RenderedImage. Это вспомогательный метод. Если источник не является RenderedImage, будет выброшено исключение.
Параметры:
index — индекс возвращаемого источника
Возвращает:
RenderedImage, представляющее исходное изображение, расположенное по указанному индексу в sources Vector.

getRenderableSource

public RenderableImage getRenderableSource(int index)
Возвращает источник как RenderableImage. Это вспомогательный метод. Если источник не является RenderableImage, будет выброшено исключение.
Параметры:
index — индекс возвращаемого источника
Возвращает:
RenderableImage, представляющий исходное изображение, расположенное по указанному индексу в sources Vector.

getNumSources

public int getNumSources()
Возвращает количество исходных изображений.
Возвращает:
количество исходных изображений в sources Vector.

getSources

public Vector<Object> getSources()
Возвращает весь вектор источников.
Возвращает:
sources Vector.
См. также:
  • setSources(Vector)

setSources

public void setSources(Vector<Object> sources)
Задает весь вектор источников равным указанному вектору.
Параметры:
sources — Vector исходных изображений
См. также:
  • getSources()

removeSources

public void removeSources()
Очищает список исходных изображений.

getNumParameters

public int getNumParameters()
Возвращает количество параметров (без учета исходных изображений).
Возвращает:
количество параметров в parameters Vector.

getParameters

public Vector<Object> getParameters()
Возвращает весь вектор параметров.
Возвращает:
parameters Vector.
См. также:
  • setParameters(Vector)

setParameters

public void setParameters(Vector<Object> parameters)
Задает весь вектор параметров равным указанному вектору.
Параметры:
parameters — указанный Vector параметров
См. также:
  • getParameters()

removeParameters

public void removeParameters()
Очищает список параметров.

add

public ParameterBlock add(Object obj)
Добавляет объект в список параметров.
Параметры:
obj — Object для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(byte b)
Добавляет Byte в список параметров.
Параметры:
b — byte для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(char c)
Добавляет Character в список параметров.
Параметры:
c — char для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(short s)
Добавляет Short в список параметров.
Параметры:
s — short для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(int i)
Добавляет Integer в список параметров.
Параметры:
i — int для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(long l)
Добавляет Long в список параметров.
Параметры:
l — long для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(float f)
Добавляет Float в список параметров.
Параметры:
f — float для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(double d)
Добавляет Double в список параметров.
Параметры:
d — double для добавления в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(Object obj, int index)
Заменяет объект в списке параметров. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
obj — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(byte b, int index)
Заменяет объект в списке параметров значением Byte. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
b — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(char c, int index)
Заменяет объект в списке параметров значением Character. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
c — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(short s, int index)
Заменяет объект в списке параметров значением Short. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
s — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(int i, int index)
Заменяет объект в списке параметров значением Integer. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
i — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(long l, int index)
Заменяет объект в списке параметров значением Long. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
l — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(float f, int index)
Заменяет объект в списке параметров значением Float. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
f — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(double d, int index)
Заменяет объект в списке параметров значением Double. Если индекс выходит за пределы текущего списка источников, список при необходимости дополняется значениями null.
Параметры:
d — параметр, заменяющий параметр с указанным индексом в parameters Vector
index — индекс параметра, который требуется заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

getObjectParameter

public Object getObjectParameter(int index)
Возвращает параметр в виде объекта.
Параметры:
index — индекс возвращаемого параметра
Возвращает:
Object, представляющий параметр с указанным индексом в parameters Vector.

getByteParameter

public byte getByteParameter(int index)
Вспомогательный метод для возврата параметра в виде byte. Если параметр null или не является Byte, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения byte.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Byte
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getCharParameter

public char getCharParameter(int index)
Вспомогательный метод для возврата параметра в виде char. Если параметр null или не является Character, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения char.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Character
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getShortParameter

public short getShortParameter(int index)
Вспомогательный метод для возврата параметра в виде short. Если параметр null или не является Short, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения short.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Short
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getIntParameter

public int getIntParameter(int index)
Вспомогательный метод для возврата параметра в виде int. Если параметр null или не является Integer, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения int.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Integer
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getLongParameter

public long getLongParameter(int index)
Вспомогательный метод для возврата параметра в виде long. Если параметр null или не является Long, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения long.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Long
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getFloatParameter

public float getFloatParameter(int index)
Вспомогательный метод для возврата параметра в виде float. Если параметр null или не является Float, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения float.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Float
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getDoubleParameter

public double getDoubleParameter(int index)
Вспомогательный метод для возврата параметра в виде double. Если параметр null или не является Double, выбрасывается исключение.
Параметры:
index — индекс возвращаемого параметра.
Возвращает:
параметр с указанным индексом в виде значения double.
Выбрасывает:
ClassCastException — если параметр с указанным индексом не является Double
NullPointerException — если параметр с указанным индексом равен null
ArrayIndexOutOfBoundsException — если index отрицателен или не меньше текущего размера этого объекта ParameterBlock

getParamClasses

public Class<?>[] getParamClasses()
Возвращает массив объектов Class, описывающих типы параметров.
Возвращает:
массив объектов Class.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/image/renderable/ParameterBlock.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API