Dart — как получить доступ к свойствам класса, имея строку с названием свойства?

Здравствуйте!

Скажите есть ли способ обратиться к свойству класса, имея только его название в строковой переменной?

Например, в php это делается примерно так:
$prop = "name";
echo $class->$prop;

Есть ли подобный механизм в Dart?

Поясню, для чего хочу это использовать:
Хочется сделать универсальную инициализацию объекта из JSON. При этом хочется, чтобы были реальные свойства объекта, которые можно привязать в две стороны к элементу DOM дерева.

Заранее спасибо.
  • Вопрос задан
  • 3300 просмотров
Пригласить эксперта
Ответы на вопрос 1
@MDError
Как вариант перегрузить оператор []

class Student {
  String name;
  String group;
  
  Student(this.name, this.group);
  
  String operator[](prop) {
    if(prop == "name")
      return name;
    else
      return group;
  }
}

void main() {
  Student student = new Student('Ivan Sidorov', '111');
  var prop = "name";
  print(student[prop]);
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы