Sobes.tech
Junior — Middle

Маслиҳат медиҳед, ки намунаҳои намудҳои интерфейсҳоро, ки дар Java барои муайян кардани шартномаҳо байни компонентҳо истифода мешаванд, пешниҳод кунед?

sobes.tech AI

Ҷавоб аз AI

Дар Java интерфейсҳо барои муайян кардани шартномаҳо байни компонентҳо истифода мешаванд, яъне, онҳо маҷмӯи методҳоро тасвир мекунанд, ки синф бояд иҷро кунад. Намудҳои интерфейсҳо:

  • Интерфейсҳои функсионалӣ — дорои як методи абстрактӣ, барои ифодаҳои лямбда ва барномасозии функсионалӣ истифода мешаванд. Масалан, Runnable, Callable, Comparator.

  • Интерфейсҳои нишона — метод надоранд, барои нишонгузории синфҳо истифода мешаванд, масалан, Serializable, Cloneable.

  • API-интерфейсҳо — рафторро дар компонентҳо тасвир мекунанд, масалан, List, Map, Set дар коллексияҳо.

Масали интерфейси функсионалӣ:

@FunctionalInterface
public interface Calculator {
    int calculate(int a, int b);
}

// Истифода
Calculator sum = (a, b) -> a + b;
int result = sum.calculate(5, 3); // 8

Интерфейсҳо имкон медиҳанд, ки меъморихоҳои чандир ва васеъшаванда эҷод шаванд, ва кафолат медиҳанд, ки байни компонентҳо робитаи заиф вуҷуд дорад.