Sobes.tech
Junior — Middle

Akými metódami je možné rozšíriť funkcionalitu už implementovanej triedy?

sobes.tech AI

Odpoveď od AI

Na rozšírenie funkčnosti už implementovanej triedy v Android (Java/Kotlin) je možné použiť niekoľko metód:

  • Dedičstvo — vytvoriť podtriedu, ktorá rozširuje základnú triedu a pridáva alebo prepíše metódy.

  • Kompozícia — zahrnúť inštanciu existujúcej triedy do novej triedy a delegovať volania, pridávajúc novú logiku.

  • Dekorátor — obaliť objekt do iného, ktorý pridáva funkčnosť, pričom zachováva rozhranie.

  • Extension Functions (v Kotlin) — pridávať nové funkcie k existujúcim triedam bez dedičstva.

Príklad dedičstva v Jave:

public class BaseClass {
    public void doSomething() {
        System.out.println("Základná implementácia");
    }
}

public class ExtendedClass extends BaseClass {
    @Override
    public void doSomething() {
        super.doSomething();
        System.out.println("Rozšírená funkcionalita");
    }
}

Príklad extension function v Kotlin:

fun String.addExclamation(): String {
    return this + "!"
}

val greeting = "Hello".addExclamation() // "Hello!"

Výber metódy závisí od konkrétneho úlohy a obmedzení projektu.