Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpRfFr 133 of 322 menu
◀ ▶

Чтение поля в Java

Объект Field описывает одно поле класса. Метод get принимает экземпляр, у которого нужно прочитать значение, и возвращает Object, который затем приводят к нужному типу.

Для открытого поля достаточно найти его по имени и вызвать get:

import java.lang.reflect.Field; class Quota { public int limit = 100; } public class Main { public static void main(String[] args) throws Exception { Quota unit = new Quota(); Field limitField = Quota.class.getField("limit"); int value = (int) limitField.get(unit); System.out.println(value); } }

Закрытое поле ищут через getDeclaredField. Перед чтением включают доступ:

import java.lang.reflect.Field; class Quota { private int limit = 100; } public class Main { public static void main(String[] args) throws Exception { Quota unit = new Quota(); Field limitField = Quota.class.getDeclaredField("limit"); limitField.setAccessible(true); int value = (int) limitField.get(unit); System.out.println(value); } }

Для статического поля в get передают null вместо экземпляра. Тип значения можно уточнить методом getType у Field, если имя поля известно из строки или конфигурации.

Класс Vessel хранит закрытую строку label. Прочитайте её средствами рефлексии и выведите в консоль.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить