Sobes.tech
Junior — Middle

Hogyan valósítják meg a Java-ban a Kotlinban használt kiterjesztéseket (Extensions)?

sobes.tech MI

Válasz az MI-től

Java-ban nincs közvetlen támogatás az extension függvényekhez, mint Kotlinban. Kotlinban az extension-ök statikus metódusokként vannak megvalósítva, amelyek úgy néznek ki, mint az objektum metódusai.

A Java-ban az extension-ök imitálására általában segédosztályokat hoznak létre statikus metódusokkal, amelyek az objektumot első paraméterként fogadják.

Példa:

public class StringExtensions {
    public static boolean isNullOrEmpty(String s) {
        return s == null || s.isEmpty();
    }
}

// Használat
boolean result = StringExtensions.isNullOrEmpty(myString);

Így a Kotlin extension-ök statikus metódusokká fordulnak, amelyeket Java-ban pontosan így lehet használni.