Programowanie funkcyjne w javie

 0    27 fiche    qni
Télécharger mP3 Imprimer jouer consultez
 
question język polski réponse język polski
zasada programwania funkcyjnego 1
commencer à apprendre
obiekty powinny być nie modyfikowalne imytable
klasa niemodyfikowalna imutable -zasada programwania funkcyjnego
commencer à apprendre
final public class Nazwa - klas nie może po niej dziedziczyc
ustawianie pol -zasada programwania funkcyjnego
commencer à apprendre
na zoziomie konstruktora, brak seterow
kolekacj - zasada programwania funkcyjnego
commencer à apprendre
operujem na kopi kolekcji
zasada programwania funkcyjnego 2
commencer à apprendre
funkcje i metody są czyste tzn nie zminiają stanu obiektu, parametrów, dla tej samej listy parametrów dostaje ten sam wynik, nie ma losowaość, unikamy nulli
Interefejs funkcyjny
commencer à apprendre
posiada tylko jedną metodę
Nazwa interfejsu funkcyjne
commencer à apprendre
coś-able
jak adnotacj - interfejsu funkcyjne
commencer à apprendre
@FunctionalInterface
co to są wyrażenia lambda w javie
commencer à apprendre
są to anomimowe funkcje, mają listę argumentu i logikę ale nie mają nazwy
przykład lambdy
commencer à apprendre
(listaArgumentów) ->{Logika}
lambda a interefej funkcyjny
commencer à apprendre
Lambda moze zastąpić każdy interfejs funkcyjny
lambda a return
commencer à apprendre
domyśli wyrazenie zwraca to zwraca funkcja
Lambda lista typów 1 argumentu
commencer à apprendre
możemy pomiynąć typ gdy jest tylko jedne typ w lambdzie
lambda a paramet
commencer à apprendre
wynik z lambdy może być przypisane do parametru
Interfejs Predicate
commencer à apprendre
na podstawie obiektó zwraca boolan
przykład Predicate
commencer à apprendre
Predicate<klasa> nazwaMetody = typ -> test;
łączenie predykatów (and)
commencer à apprendre
nazwaPredyka. and(nazwaPredykataDrugiego);
lub - Predicate
commencer à apprendre
nazwaPredyka. or(nazwaPredykataDrugiego);
negacja - Predicate
commencer à apprendre
nazwaPredyka. negate(nazwaPredykataDrugiego);
Interfejs consumer
commencer à apprendre
interfej ten coś robić, jakieś zadanie ale nic nie zwraca
Przykład consumer
commencer à apprendre
Consumer<klasa> nazwaMetody = typ -> test;
łaczeni consumer
commencer à apprendre
nazwaConsumer. abdThan(kolejnrConsumer)
co się stanie gdy w połaczanym consumer coś pojdzie nie tak
commencer à apprendre
kolejne consumer nie wykonaja się
supplier co przyjmuje i co zwraca
commencer à apprendre
nie przymuje żadnych argumentów a zwraca obiekt danego typu ty
Function - co robi
commencer à apprendre
Function przyjmuje jeden typ obiektu zmina go i zwracca inny typ obiektu
przykład interefejsi function
commencer à apprendre
Functiom<Studen, string> getStuden = studen -> student. getName()
BiFunction - co robi
commencer à apprendre
przmuje obiekty dwuch typów zwaca obiekt trzeciego typu

Vous devez vous connecter pour poster un commentaire.