Red de conocimientos sobre prescripción popular - Cuidado de la salud en otoño - Algunos programas de Android se convierten en archivos samli después de la descompilación. ¿Esto está escrito directamente por el programador en lenguaje pequeño o en java?

Algunos programas de Android se convierten en archivos samli después de la descompilación. ¿Esto está escrito directamente por el programador en lenguaje pequeño o en java?

Hola,

1, tipo original:

V void solo se puede usar para tipos de valor de retorno.

z Booleano

b bytes

Es corto

c caracteres

I int

p>

J long (64 bits)

f float

d double (64 bits)

Tipo de objeto:

Lpaquete/nombre/NombreObjeto es equivalente a paquete.nombre.NombreObjeto en java, explicado a continuación:

l: Indica que este es un tipo de objeto.

Paquete/nombre: El paquete donde se encuentra el objeto.

;: Indica el final del nombre del objeto.

Forma de representación de matriz:

[I: representa una matriz unidimensional de números enteros, equivalente a int[] de Java;

Para matrices multidimensionales , simplemente agregue [,[[I = int[][]; Nota: Cada dimensión es hasta 255;

Representación de la matriz de objetos:

[Ljava/lang/String representa string Matriz de objetos;

Representación del método:

lPaquete/nombre/nombre de objeto;——& gt;El nombre del método (III)Z se explica a continuación:

Lpaquete/nombre/NombreObjeto representa el tipo.

MethodName representa el nombre del método.

Representación del campo:

l paquete/nombre/nombre de objeto;——>nombre del campo:Ljava/lang/String;

Esto significa:Paquete nombre, nombre del campo y tipo de campo.

Parámetros del método:

Cuando se llama a un método, los parámetros del método se colocan en los últimos n registros.

Por ejemplo, un método tiene dos; parámetros y cinco registros (v0~v4).

Los parámetros luego se colocarán en los dos últimos registros (v3 y v4).

El primer parámetro en un método no estático es siempre el objeto sobre el cual se llama el método.

Nota: Para los métodos estáticos, son iguales excepto que este parámetro no lo es; implícito.

Nombramiento de registros:

v nombramiento

El primer registro llamado p es el primer registro de parámetro en el método.

Comparación: la denominación P sirve para evitar la desventaja de que los registros de parámetros deban volver a numerarse cuando se agreguen registros a métodos en el futuro:

Específicamente: los tipos Long y Double son ambos de 64 bits y necesito 2 registros.

Por ejemplo, para métodos no estáticos

lmy object——>My método (IJZ) V;

Hay cuatro parámetros: LMyObject, int , long, bool requieren cinco registros para almacenar parámetros;

P0 esto

P1 I (entero)

P3·P2 (largo)

P4 Z(Booleano)