JNI-módszer aláírás java, Intel® szoftver
Például a Java módszer:
hosszú f (int n, s karakterlánc, int [] arr);
az alábbi típusú aláírás:
(ILjava / Lang / string; [I) J
Hmm. nem sok, és nem nagyon világos. Megpróbálom leírni a saját szavait.
JNI aláírás egy listát tartalmaz fajta formális paraméterek és visszatérési típusa. A felvételi formátum hasonló Pascal-szerű módszerrel meghatározások: az első, majd a paramétereket a visszatérési érték (by the way, nem sokan tudják, hogy sok Java fogalmak másolása a nyelvet és operációs Oberon rendszer továbbfejlesztése N.Virta ötletek, Pascal alkotója). A JNI-aláírás terek tilos - minden egyes karakter van értelme, és nem zárható ki, veszteség nélkül. paraméter lista elemei nem választott semmilyen karaktert. A kijelölés formális típus paraméterek az alábbiakban. Vannak durván 4 szabályok:
- Primitív típusok vannak ellátva a megfelelő betű a latin ábécé (lásd a fenti táblázatot):
- Arrays: annak jelzésére, hogy Cho kerül át nem egy skalár típus, és a tömb használják a szimbólum „[”. Található jobb oldali szögletes zárójel jelölés típusa - a típus a tömb elem. A tömb méretét nem jelezzük.
- Típusai (objektumok): A kijelölés kezdődik a nagybetűs L, ami után nincs hely teljes nevét az osztály választott: Package (egymásba ágyazott csomagokat törtvonallal elválasztott) és az osztály nevét (és egy perjel választja el). A belépés esetén érzékeny. Miután az osztály nevét kell feltétlenül megy egy vesszőt, ami a végén egy bizonyos típusú. Felhívom a figyelmet, hogy nem lehet kihagyni a vessző (beleértve a leírás a típusú visszatérési értéke a módszer).
- A visszatérési típusa void (azaz semmi) helyébe a szimbólum „V”
Most mutasd meg a gyakorlatban:
1. int MyMethod1 (úszó egy, char b) -> (FC) I
2. int [] MyMethod2 (hosszú [] a) -> ([J) [I
3. void MyMethod3 (package1.subpackage2.MyClass [] a, karakterlánc b) -> (Lpackage1 / subpackage2 / MyClass; Ljava / Lang / String;) V
4. package1.subpackage2.MyClass [] MyMethod4 (String egy, Class [] b, úszó c) -> (Ljava / Lang / String; [Java / Lang / osztályú F) [Lpackage1 / subpackage2 / MyClass;
Tehát mágikus első pillantásra, karakterek sorozata meglehetősen egyszerű (ellentétben a C nyelv aláírások).
Ui Egyre ezt a megjegyzést a tabletta a metróban. Kiderült, a lemezeket jól alkalmazhatók tartalom létrehozása. Míg a kényelmet, a billentyűzet android még mindig lehetséges, hogy működjön))
További információ a lehetőségek fordító optimalizáció, tekintse meg optimalizálási közlemény.