reflection- все статьи тега ➜ страница 2


Что такое invokedynamic и как его использовать?

Я постоянно слышу обо всех новых интересных функциях, которые добавляются в JVM, и одна из этих интересных функций вызвана динамикой. Я хотел бы знать, что это такое и как это делает рефлексивное программирование на Java проще или лучше? ...

Как проверить, является ли тип примитивным

у меня есть блок кода, который выполняет в тег html. Type t = typeof(T); // I pass <T> in as a paramter, where myObj is of type T tagBuilder.Attributes.Add("class", t.Name); foreach (PropertyInfo prop in t.GetProperties()) { object propValue = prop.GetValue(myObj, null); string stringValue = propValue != null ? propValue.ToString() : String.Empty; tagBuilder.Attributes.Add(prop.Name, stringValue); } это отлично работает, за исключением того, что я хочу, чтобы это делалось то ...

В чем разница между getFields и getDeclaredFields в отражении Java

Я немного запутался в разнице между getFields способ и getDeclaredFields метод при использовании отражения Java. Я читал, что getDeclaredFields дает вам доступ ко всем полям класса и getFields возвращает только открытые поля. Если это так, почему бы вам просто не использовать getDeclaredFields? может ли кто-нибудь подробно остановиться на этом и объяснить разницу между этими двумя методами, и когда/почему вы хотите использовать один над другим? ...

Получить тип универсального параметра в Java с отражением

можно ли получить тип универсального параметра? пример: public final class Voodoo { public static void chill(List<?> aListWithTypeSpiderMan) { // Here I'd like to get the Class-Object 'SpiderMan' Class typeOfTheList = ???; } public static void main(String... args) { chill(new ArrayList<SpiderMan>()); } } ...

Отражение Java: как получить имя переменной?

используя отражение Java, можно ли получить имя локальной переменной? Например, если у меня есть это: Foo b = new Foo(); Foo a = new Foo(); Foo r = new Foo(); можно ли реализовать метод, который может найти имена этих переменных, например, так: public void baz(Foo... foos) { for (Foo foo: foos) { // Print the name of each foo - b, a, and r System.out.println(***); } } EDIT: этот вопрос отличается от того, есть ли способ в Java найти имя переменной, которая была пе ...

Как динамически создать универсальный объект C# с помощью отражения? [дубликат]

этот вопрос уже есть ответ здесь: Передать Экземпляр Системы.Введите в качестве параметра типа для универсального класса 4 ответы В C# у меня есть следующий объект: public class Item { } public class Task<T> { } public class TaskA<T> : Task<T> { } public class TaskB<T> : Task<T> { } Я хочу динамически создавать TaskA или TaskB с помощью отражения C# (активатор.CreateIn ...

Могу ли я изменить личное поле только для чтения в C# с помощью отражения?

Мне интересно, поскольку многое можно сделать с помощью отражения, могу ли я изменить частное поле только для чтения после завершения конструктора? (Примечание: просто любопытство) public class Foo { private readonly int bar; public Foo(int num) { bar = num; } public int GetBar() { return bar; } } Foo foo = new Foo(123); Console.WriteLine(foo.GetBar()); // display 123 // reflection code here... Console.WriteLine(foo.GetBar()); // display 456 ...

Как загрузить сборку в AppDomain со всеми ссылками рекурсивно?

Я хочу загрузить в новый AppDomain некоторая сборка, которая имеет сложное дерево ссылок (MyDll.dll - > Microsoft.Офис.Взаимодействие.Превосходить.dll - > Microsoft.Vbe.Взаимодействие.dll - > Office.dll - > stdole.dll) насколько я понял, когда сборка загружается в AppDomain, его ссылки не будут загружены автоматически, и я должен загрузить их вручную. Поэтому, когда я делаю: string dir = @"SomePath"; // different from AppDomain.CurrentDomain.BaseDirectory string path = System.IO.Pa ...

Доступ к частным унаследованным полям через отражение в Java

Я нашел способ получить наследуемые члены через class.getDeclaredFields(); и доступ к частным членам через class.getFields() Но я ищу частные унаследованные поля. Как я могу этого достичь? ...

В чем разница между a.getClass() и A.class на Яве?

в Java какие плюсы/минусы существуют вокруг выбора использовать a.getClass() или A.class? Либо может быть использован везде, где Class<?> ожидается, но я предполагаю, что будет производительность или другие тонкие преимущества для использования обоих в разных обстоятельствах (так же, как и с Class.forName() и ClassLoader.loadClass(). ...

Как преобразовать объект Java (bean) в пары ключ-значение (и наоборот)?

скажем, у меня есть очень простой объект java, который имеет только некоторые свойства getXXX и setXXX. Этот объект используется только для обработки значений, в основном записи или типобезопасной (и производительной) карты. Мне часто нужно скрыть этот объект для пар значений ключей (либо строк, либо типа safe) или преобразовать из пар значений ключей в этот объект. кроме отражения или ручного написания кода для этого преобразования, каков наилучший способ достичь этого? пример может быть от ...

Что такое эквивалент C# для Java isInstance ()?

Я знаю is и as на instanceof, а как же рефлексивный isInstance() способ? ...

Как я могу динамически оценивать код C#?

Я могу сделать eval("something()"); для динамического выполнения кода в JavaScript. Есть ли способ для меня сделать то же самое в C#? пример того, что я пытаюсь сделать: у меня есть целочисленная переменная (скажем i) и у меня есть несколько свойств по именам: "Property1", "Property2", "Property3" и т. д. Теперь я хочу выполнить некоторые операции над " свойствомЯ " свойства в зависимости от значения i. Это очень просто с Javascript. Есть ли способ сделать это с помощью C#? ...

Как проверить, существует ли свойство для динамического анонимного типа в c#?

У меня есть анонимный тип объекта, который я получаю в качестве динамического метода Я хотел бы проверить, что свойство существует на этом объекте. .... var settings = new { Filename="temp.txt", Size=10 } ... function void Settings(dynamic settings) { var exists = IsSettingExist(settings,"Filename") } Как бы я реализовал IsSettingExist ? ...

Как я могу получить список столбцов в таблице базы данных SQLite?

Я ищу, чтобы получить список столбцов в таблице. База данных является последним выпуском SQLite (3.6, я считаю). Я ищу код, который делает это с помощью SQL-запроса. Дополнительные бонусные баллы за метаданные, связанные со столбцами (например, длина, тип данных и т. д...) ...

Отражение Java-влияние setAccessible(true)

Я использую некоторые аннотации для динамического задания значений полей в классах. Поскольку я хочу сделать это независимо от того, является ли это публичным, защищенным или частным, я вызываю setAccessible(true) на поле объекта каждый раз перед вызовом set() метод. Мой вопрос в том, какое влияние оказывает setAccessible() вызов есть на самом поле? более конкретно, скажем, что это частное поле и этот набор кодов вызывает setAccessible(true). Если какое-то другое место в коде было тогда получит ...

Как получить имя функции в Go?

учитывая функцию, можно ли получить ее имя? Скажи: func foo() { } func GetFunctionName(i interface{}) string { // ... } func main() { // Will print "name: foo" fmt.Println("name:", GetFunctionName(foo)) } Мне сказали, что во время выполнения.FuncForPC поможет, но я не смог понять, как его использовать. ...

Питон: изменение методов и атрибутов во время выполнения

Я хочу создать класс в Python, который я могу добавлять и удалять атрибуты и методы. Как я могу это сделать? О, И пожалуйста, не спрашивайте почему. ...

Можно ли динамически загружать библиотеку во время выполнения из приложения Android?

есть ли способ сделать приложение для Android для загрузки и использования библиотеки Java во время выполнения? вот пример: представьте, что приложение должно сделать некоторые вычисления в зависимости от входных значений. Приложение запрашивает эти входные значения, а затем проверяет, требуется ли Classeили Methods доступны. если нет, он подключается к серверу, загружает необходимую библиотеку и загружает ее во время выполнения для вызова требуемой методы, использующие методы отражения. Ре ...

Механизм отражения Java: создать класс, реализующий

Class someInterface = Class.fromName("some.package.SomeInterface"); как мне теперь создать новый класс, который реализует someInterface? мне нужно создать новый класс, и передать его в функцию, которая нужна SomeInterface в качестве аргумента. ...