Sobes.tech
Junior — Middle

Můžete vysvětlit, co jsou rozšíření (Extensions) v jazyce Java a jak jsou implementována?

sobes.tech AI

Odpověď od AI

V jazyce Java není vestavěná podpora pro rozšíření (Extensions) jako v některých jiných jazycích (například Kotlin). Koncept rozšíření je však realizován pomocí statických metod ve třídách s pomocnými funkcemi, které přijímají objekt jako parametr a přidávají mu další funkčnost.

Například, pokud chcete přidat novou metodu ke stávající třídě bez změny jejího zdrojového kódu, vytvoříte třídu se statickými metodami:

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

// Použití:
String s = "";
boolean empty = StringExtensions.isNullOrEmpty(s);

V Android vývoji s Kotlinem jsou rozšíření implementována jako rozšiřující funkce a vlastnosti, ale v čisté Javě je třeba použít popsaný přístup.