Sobes.tech
Junior — Middle

Mi a Reflection API fő feladata az objektumokkal és osztályokkal való munkában?

sobes.tech MI

Válasz az MI-től

A Reflection API Java-ban lehetővé teszi a programozott módon történő osztályok, objektumok, metódusok és mezők szerkezetének vizsgálatát és módosítását a program futása közben.

Fő feladata, hogy lehetővé tegye az osztályok (például azok metódusai, mezői, konstruktorai) dinamikus információinak megszerzését, objektumok létrehozását, metódusok hívását és mezők módosítását anélkül, hogy azok a fordítási szakaszban ismertek lennének.

Ez hasznos keretrendszerek, könyvtárak, szériázási eszközök, tesztek és más esetek számára, amikor ismeretlen osztályokkal kell dolgozni.

Reflection használatával metódus hívási példa:

import java.lang.reflect.Method;

public class ReflectionExample {
    public static void main(String[] args) throws Exception {
        Class<?> clazz = Class.forName("java.lang.String");
        Method method = clazz.getMethod("toUpperCase");
        String str = "hello";
        String result = (String) method.invoke(str);
        System.out.println(result); // HELLO
    }
}