Perguntas com a marcação «reflection»

167
Como carregar dinamicamente uma classe Python

Dada uma string de uma classe Python, por exemplo my_package.my_module.MyClass, qual é a melhor maneira possível de carregá-la? Em outras palavras, estou procurando um equivalente Class.forName()em Java, função em Python. Ele precisa funcionar no Google App Engine. De preferência, essa seria uma...

162
Como testar se o tipo é primitivo

Eu tenho um bloco de código que serializa um tipo em uma marca de 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);...

154
Como interceptar uma chamada de método em c #?

Para uma determinada classe, eu gostaria de ter a funcionalidade de rastreamento, ou seja, gostaria de registrar todas as chamadas de métodos (assinatura do método e valores reais dos parâmetros) e todas as saídas do método (apenas a assinatura do método). Como faço para isso assumindo que:...

150
Obter propriedades e valores de objeto desconhecido

No mundo do PHP, decidi tentar o C #. Eu fiz uma pesquisa, mas não consigo encontrar a resposta de como fazer o equivalente a isso. $object = new Object(); $vars = get_class_vars(get_class($object)); foreach($vars as $var) { doSomething($object->$var); } Basicamente, tenho uma lista de um...

147
Como obter um valor de propriedade com base no nome

existe uma maneira de obter o valor de uma propriedade de um objeto com base em seu nome? Por exemplo, se eu tiver: public class Car : Vehicle { public string Make { get; set; } } e var car = new Car { Make="Ford" }; Eu quero escrever um método onde eu possa passar o nome da propriedade e ele...

146
Alguma maneira de invocar um método privado?

Eu tenho uma classe que usa XML e reflexão para retornar Objects para outra classe. Normalmente, esses objetos são subcampos de um objeto externo, mas, ocasionalmente, é algo que eu quero gerar rapidamente. Eu tentei algo assim, mas sem sucesso. Acredito que é porque o Java não permitirá que você...

139
Reflexão Java: Como obter o nome de uma variável?

Usando o Java Reflection, é possível obter o nome de uma variável local? Por exemplo, se eu tiver isso: Foo b = new Foo(); Foo a = new Foo(); Foo r = new Foo(); é possível implementar um método que pode encontrar os nomes dessas variáveis, assim: public void baz(Foo... foos) { for (Foo foo:...