Как да промените val
свойство (не променлива на метод) в дебъгер?
Да, знам, че val
е окончателен аналог
Точка на прекъсване тук:
Set value
деактивиран в контекстното меню:
Оценете не работи:
Как да промените val
свойство (не променлива на метод) в дебъгер?
Да, знам, че val
е окончателен аналог
Точка на прекъсване тук:
Set value
деактивиран в контекстното меню:
Оценете не работи:
В инструмента за отстраняване на грешки изберете стойността, използвайте контекстното меню с десен бутон, за да изберете „задаване на стойност...“ (пряк път по подразбиране F2). Стойността на променливата вече трябва да се показва в текстово поле. Въведете желаната стойност и натиснете Enter, за да промените стойността. Трябва само да въведете стойността, а не присвояване (напр. x = "test"
е грешно, просто въведете стойността "test"
). Променената стойност вече се прилага към полето.
В програмата за отстраняване на грешки Е също така възможно да се променят стойностите на неизменни val
дефинирани стойности в Kotlin, както също е възможно да се промени стойността на final
дефинирани променливи в Java.
val
. Актуализирам въпроса
- person Nick; 22.05.2019
Можете да го направите с помощта на отражение.
Просто отворете менюто за оценка на израза, след което въведете:val field = Main::class.java.getDeclaredField("b")
field.isAccessible = true
field.set(b, true)
Успях да модифицирам стойността на val
в движение с помощта на "оценка и регистриране". Вижте пълния отговор