Sobes.tech
Junior — Middle

Tudná elmagyarázni, hogy mik az Extensions a Java nyelvben, és hogyan valósulnak meg?

sobes.tech MI

Válasz az MI-től

A Java nyelvben nincs beépített támogatás az extension-ökre (Extensions), mint néhány más nyelvben (például Kotlin). Az extension-ök koncepciója azonban statikus metódusokon keresztül valósul meg segédosztályokban, amelyek egy objektumot paraméterként fogadnak és további funkcionalitást adnak hozzá.

Például, ha egy meglévő osztályhoz új metódust szeretnél hozzáadni anélkül, hogy módosítanád a forráskódját, létrehozol egy osztályt statikus metódusokkal:

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

// Használat:
String s = "";
boolean empty = StringExtensions.isNullOrEmpty(s);

Android fejlesztés Kotlinban, az extension-ök kiterjesztő függvények és tulajdonságokként valósulnak meg, de tiszta Java-ban a fent leírt megközelítést kell alkalmazni.