Resultados da pesquisa a pedido "bytecode"
Empurrando variáveis para Stack e Variáveis que vivem na diferença de Stack?
Então eu sei que existem 2 áreas de memória:PilhaeMontão. Eu também sei que se você criar uma variável local, ela ficará na pilha, não na pilha. A pilha aumentará à medida que os dados forem inseridos, como em: Agora vou tentar passar a ...
Por que a tradução lambda precisa da geração de um método estático?
A tradução do Lambda é um processo em duas etapas,1: dessugar o lambda em um método estático na mesma classe. public class Main { public static void main(String[] args) { Runnable r = () ...
Por que o Java 8 lambdas é chamado usando invokedynamic?
oinvokedynamic A instrução é usada para ajudar a VM a determinar a referência do método em tempo de execução, em vez de conectá-la em tempo de compilação. Isso é útil em linguagens dinâmicas nas quais o método exato e os tipos de argumento não ...
Python: LOAD_FAST vs. LOAD_DEREF com adição no local
Na sexta-feira passada, fui a uma entrevista de emprego e tive que responder à seguinte pergunta: por que esse código gera uma exceção (UnboundLocalError: local variable 'var' referenced before assignment na linha que contémvar += 1)? def ...
Como criar um construtor padrão com o Byte Buddy
Eu quero interceptar algumas chamadas de método em uma das minhas classes, mas essas classes não têm um construtor padrão. Dada a classe a seguir, como eu configuraria o Byte Buddy para também criar um construtor público sem argumentos para ...
Qual é o significado de "sintético estático"?
Estou vendo algum código desmontado obtido do bytecode Java. Vejo algumas declarações da seguinte maneira: .method static synthetic access$0()Lcom/package/Sample;Eu não sou capaz de descobrir o que osynthetic ouaccess$0 significar. Alguém por ...
Verifique se o bytecode Java contém símbolos de depuração
Gostaria de saber como posso verificar se uma classe Java compilada contém símbolos de depuração. O problema é que eu compilo um aplicativo a partir de ant com debug = "on", mas uma JVM específica gera uma exceção: diz que os símbolos de ...
Quando a execução dos operadores binários acontece em Java?
Estou tentando entender o código de bytes java. Comecei com um exemplo simples: public class Test { public static void main(String args[]) { System.out.println(2 + 1); } }Eu compilei esta classe: javac Test.javaE então eu tentei umjavap na ...
Como eu analisaria o pool constante de arquivos de classe Java?
De acordo comhttps://en.wikipedia.org/wiki/Java_class_file#General_layout [https://en.wikipedia.org/wiki/Java_class_file#General_layout]- o pool constante Java de um arquivo de classe começa 10 bytes no arquivo. Até agora, consegui analisar tudo ...
Gerando métodos com tipos genéricos com o gerador de bytecode do Asm (ClassWriter)
Definir getters e setters simples é fácil usando o Asm (e, felizmente, é explicado nas perguntas frequentes). Mas uma coisa que não é mencionada, e para a qual não consegui encontrar documentação, é como implementá-las usando informações de tipo ...