Junior — Middle
უნდა უზრუნველყოთ ინტერფეისის მეთოდების განხორციელება მისი საწყის კლასში?
sobes.tech AI
პასუხი AI-სგან
Android-ში (და ზოგადად Java/Kotlin-ში) ინტერფეისი მხოლოდ კონტრაქტს განსაზღვრავს — მეთოდების ნაკრებს, რომლებიც უნდა განხორციელდეს კლასის მიერ. იმ კლასებში, რომლებიც ახორციელებენ ინტერფეისს, ეს მეთოდები უნდა იყოს განხორციელებული.
თუმცა, თუ გაქვთ საწყისი კლასი, რომელიც ახორციელებს ინტერფეისს, შეგიძლიათ მასში უზრუნველყოთ ინტერფეის მეთოდების ძირითადი განხორციელება. ეს სასარგებლოა, თუ რამდენიმე ქვესინფერი გამოიყენებს ერთსა და იმავე ლოგიკას, რათა თავიდან აიცილოთ კოდის დუბლირება.
მაგალითად, Java-ში შეგიძლიათ ასე გააკეთოთ:
public interface MyInterface {
void doSomething();
}
public abstract class BaseClass implements MyInterface {
@Override
public void doSomething() {
System.out.println("ძირითადი განხორციელება");
}
}
public class ChildClass extends BaseClass {
// შეგიძლიათ გადაწეროთ doSomething ან გამოიყენოთ ძირითადი განხორციელება
}
ამ გზით, ინტერფეის მეთოდების განხორციელების მიწოდება საწყის კლასში შეიძლება იყოს სასარგებლო და ლოგიკური არქიტექტურის და კოდის გადამეორების თვალსაზრისით.