Android имеет какой-либо способ инстанцировать объектов, не вызывая ни одного из его конструкторов?
В Java Sun имеет sun.reflect. ReflectionFactory.getReflectionFactory () .newConstructorForSerialization (), в .NET у нас есть Система. Время выполнения. Сериализация. FormatterServices. GetUninitializedObject (), но я не смог найти что-либо как этот в платформе Android.
Вы можете сделать это из собственного кода с помощью функции JNI AllocObject. См. JNI Spec . Вызов нативного кода будет дороже, чем вызов конструктора без операций, но, вероятно, дешевле, чем вызов конструктора, который генерирует исключение.
Я не знаю, есть ли другой способ сделать это. На меня ничего не прыгает.
Я так не верю, однако платформа Android действительно содержит Java Reflection API в java.lang.reflect. *
, поэтому все, что возможно с помощью Java Reflection API, возможно в Android