Поля данных объектов Java

Доступ к общедоступным и локальным данным

Классы Java® могут содержать членские переменные под названием fields, который может иметь общедоступный или частный доступ.

Чтобы получить доступ к полям данных public, которые ваш код может считать или изменить непосредственно, используют синтаксис:

object.field

Чтобы читать из и, где позволено, изменить поля данных private, используют методы accessor, заданные классом Java. Эти методы иногда упоминаются, как добираются и методы установки.

Например, класс java.awt.Frame имеет и частные и общедоступные поля данных. Метод доступа чтения getSize возвращает объект java.awt.Dimension.

frame = java.awt.Frame;
frameDim = getSize(frame)
frameDim =

java.awt.Dimension[width=0,height=0]

Класс Dimension имеет общедоступные поля данных height и width. Отобразите значение height.

height = frameDim.height
height = 0

Установите значение width.

frameDim.width = 42
frameDim =

java.awt.Dimension[width=42,height=0]

Отображение общественности Поля данных объекта Java

Чтобы перечислить общедоступные поля объекта Java, вызовите функцию fieldnames. Например, создайте объект Integer и отобразите имена полей.

value = java.lang.Integer(0);
fieldnames(value)
ans = 
    'MIN_VALUE'
    'MAX_VALUE'
    'TYPE'
    'SIZE'

Чтобы отобразить больше информации о полях данных, введите:

fieldnames(value,'-full')
ans = 
    'static final int MIN_VALUE'
    'static final int MAX_VALUE'
    'static final java.lang.Class TYPE'
    'static final int SIZE'

Доступ к статическим полевым данным

static data field является полем, которое применяется к целому классу объектов. Чтобы получить доступ к статическим полям, используйте имя класса. Например, отобразите поле TYPE класса Integer.

thisType = java.lang.Integer.TYPE
thisType =

int

Также создайте экземпляр класса.

value = java.lang.Integer(0);
thatType = value.TYPE
thatType =

int

MATLAB® не позволяет присвоение на статические поля с помощью имени класса. Чтобы присвоить значение, используйте статический метод set класса или создайте экземпляр класса. Например, присвойте value следующему полю staticFieldName путем создания экземпляра java.className.

objectName = java.className;
objectName.staticFieldName = value;

Смотрите также