Sobes.tech
Junior — Middle

Vai būtu jānodrošina interfeisa metožu īstenošana tās pamatklasē?

sobes.tech AI

Atbilde no AI

Androidā (un kopumā Java/Kotlin) interfeiss definē tikai līgumu — metožu kopumu, kuras klasei ir jāīsteno. Klases, kas īsteno interfeisu, šīs metodes ir jāīsteno.

Tomēr, ja jums ir pamata klase, kas īsteno interfeisu, jūs varat tajā nodrošināt interfeisa metožu pamata īstenojumu. Tas ir noderīgi, ja vairākas apakšklases izmantos to pašu loģiku, lai izvairītos no koda dublēšanas.

Piemēram, Java jūs to varat izdarīt šādi:

public interface MyInterface {
    void doSomething();
}

public abstract class BaseClass implements MyInterface {
    @Override
    public void doSomething() {
        System.out.println("Pamata īstenojums");
    }
}

public class ChildClass extends BaseClass {
    // Jūs varat pārrakstīt doSomething vai izmantot pamata īstenojumu
}

Tādējādi, nodrošinot interfeisa metožu īstenojumu pamata klasē, tas var būt noderīgi un loģiski no arhitektūras un koda atkārtotas izmantošanas viedokļa.