Je li Java Util komparator funkcionalno sučelje?
Je li Java Util komparator funkcionalno sučelje?

Video: Je li Java Util komparator funkcionalno sučelje?

Video: Je li Java Util komparator funkcionalno sučelje?
Video: Создание аннотации в java [Java Annotations | Reflection api] 2024, Travanj
Anonim

Uvod. The sučelje za usporedbu doživio je veliku reviziju u Javi8, ali je i dalje zadržao svoju bit koja je usporedba i sortiranje objekata u zbirkama. Komparator sada podržava deklaracije putem lambda izraza jer je a Funkcionalno sučelje . Ovdje je jednostavan izvorni kod za Java.

S obzirom na to, je li komparator funkcionalno sučelje?

Svi objekti u Javi već imaju implementaciju metode equals() jer je nasljeđuju od klase Object. Tako, Komparator je funkcionalno sučelje jer postoji samo jedna nepromijenjena apstraktna metoda: usporedi (T o1, T o2).

Netko se također može pitati, što komparator radi Java? Java Comparator je sučelje za sortiranje Java predmeta. Pozvan od strane “ Java . komparator ,” Java Comparator uspoređuje dva Java objekte u formatu "usporedi (Objekt 01, Objekt 02)". Koristeći metode koje se mogu konfigurirati, Java Comparator može uspoređivati objekte kako bi vratio cijeli broj na temelju pozitivne, jednake ili negativne usporedbe.

Dodatno, koja je upotreba funkcionalnog sučelja u Javi?

A funkcionalno sučelje je sučelje koji sadrži samo jednu apstraktnu metodu. Mogu imati samo jednu funkcionalnost za izlaganje. Iz Java 8 nadalje, lambda izrazi se mogu koristiti za predstavljanje instance a funkcionalno sučelje . Runnable, ActionListener, Comparable su neki od primjera funkcionalna sučelja.

Je li Lambda samo za funkcionalna sučelja?

Da, lambda mogu se koristiti izrazi samo implementirati apstraktnu metodu unutar a funkcionalno sučelje . Java je objektno orijentirani jezik, dok lambda izrazi su a funkcionalna značajka. Kako bi dodao lambda podrška ekspresiji za Javu, Java 8 je odlučila uvesti funkcionalna sučelja.

Preporučeni: