Junior — Middle
Mali by ste poskytnúť implementáciu pre metódy rozhrania vo svojej základnej triede?
sobes.tech AI
Odpoveď od AI
V Androide (a všeobecne v Java/Kotlin) rozhranie definuje iba zmluvu — súbor metód, ktoré musia byť implementované triedou. V triedach, ktoré implementujú rozhranie, tieto metódy musia byť implementované.
Avšak, ak máte základnú triedu, ktorá implementuje rozhranie, môžete v nej poskytnúť základnú implementáciu metód rozhrania. To je užitočné, ak niekoľko podtried bude používať rovnakú logiku, aby sa predišlo duplikácii kódu.
Napríklad v Jave to môžete urobiť takto:
public interface MyInterface {
void doSomething();
}
public abstract class BaseClass implements MyInterface {
@Override
public void doSomething() {
System.out.println("Základná implementácia");
}
}
public class ChildClass extends BaseClass {
// Môžete prepísať doSomething alebo použiť základnú implementáciu
}
Týmto spôsobom môže byť poskytnutie implementácie metód rozhrania v základnej triede užitočné a logické z pohľadu architektúry a opakovania kódu.