Μηχανισμός μεταγλώττισης και εκτέλεσης
-
Ο μεταγλωττιστής της Java (javac) μετατρέπει το πηγαίο πρόγραμμα
από Java σε εντολές της
ιδεατής μηχανής Java (Java virtual machine) (JVM)
- Το περιβάλλον εκτέλεσης της Java (java)
- φορτώνει την κλάση που ορίζουμε,
- φορτώνει όποιες ακόμα κλάσεις απαιτούνται,
- τις συνδέει με την κλάση που ζητήσαμε να εκτελεστεί ορίσαμε, και
- εκτελεί τις εντολές JVM αρχίζοντας από τη μέθοδο main.
Συνάρτηση σε Java
// Return n!
static public int factorial(int n) {
int result;
int counter;
counter = n;
result = 1;
while (counter > 0) {
result = result * counter;
counter = counter - 1;
}
return (result);
}
Αντίστοιχες εντολές JVM
Method int factorial(int)
0 iload_0
1 istore_2
2 iconst_1
3 istore_1
4 goto 15
7 iload_1
8 iload_2
9 imul
10 istore_1
11 iload_2
12 iconst_1
13 isub
14 istore_2
15 iload_2
16 ifgt 7
19 iload_1
20 ireturn