Gå til innhold

[LØST] Finnes noe tilsvarende eval()-funksjonen?


Anbefalte innlegg

Både i javascript og php har jeg brukt en slik funksjon. Finnes noe tilsvarende i java?

php:

$a = "metode()";
eval($a);

Hvordan gjøres tilsvarende i java? Den kodesnutten skal altså gjøre et kall til metode().

 

(Jeg er klar over de potensielle sikkerhetsproblemene det kan medføre om man ikke holder tunga rett i munnen. Men det er mye mer fleksibelt enn en gigantisk switch-blokk!)

Endret av petterg
Lenke til kommentar
Videoannonse
Annonse

Er det noe sånt som dette du tenker på?

 

 
RefTest rt = new RefTest();
Method m = rt.getClass().getMethod("add");
m.invoke(rt);

 

Linje 1: Oppretter et objekt av klassen RefTest, denne klasseninneholder metoden "void add()".

 

Linje 2: Henter metoden med navnet "add" fra klassen RefTest.

 

Linje 3: Kjører metoden i referanse "m" (som er "add" metoden) i objektet "rt".

Lenke til kommentar
  • 2 uker senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...