Programowanie funkcyjne w javie

 0    27 Datenblatt    qni
mp3 downloaden Drucken spielen überprüfen
 
Frage język polski Antworten język polski
zasada programwania funkcyjnego 1
Lernen beginnen
obiekty powinny być nie modyfikowalne imytable
klasa niemodyfikowalna imutable -zasada programwania funkcyjnego
Lernen beginnen
final public class Nazwa - klas nie może po niej dziedziczyc
ustawianie pol -zasada programwania funkcyjnego
Lernen beginnen
na zoziomie konstruktora, brak seterow
kolekacj - zasada programwania funkcyjnego
Lernen beginnen
operujem na kopi kolekcji
zasada programwania funkcyjnego 2
Lernen beginnen
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
Lernen beginnen
posiada tylko jedną metodę
Nazwa interfejsu funkcyjne
Lernen beginnen
coś-able
jak adnotacj - interfejsu funkcyjne
Lernen beginnen
@FunctionalInterface
co to są wyrażenia lambda w javie
Lernen beginnen
są to anomimowe funkcje, mają listę argumentu i logikę ale nie mają nazwy
przykład lambdy
Lernen beginnen
(listaArgumentów) ->{Logika}
lambda a interefej funkcyjny
Lernen beginnen
Lambda moze zastąpić każdy interfejs funkcyjny
lambda a return
Lernen beginnen
domyśli wyrazenie zwraca to zwraca funkcja
Lambda lista typów 1 argumentu
Lernen beginnen
możemy pomiynąć typ gdy jest tylko jedne typ w lambdzie
lambda a paramet
Lernen beginnen
wynik z lambdy może być przypisane do parametru
Interfejs Predicate
Lernen beginnen
na podstawie obiektó zwraca boolan
przykład Predicate
Lernen beginnen
Predicate<klasa> nazwaMetody = typ -> test;
łączenie predykatów (and)
Lernen beginnen
nazwaPredyka. and(nazwaPredykataDrugiego);
lub - Predicate
Lernen beginnen
nazwaPredyka. or(nazwaPredykataDrugiego);
negacja - Predicate
Lernen beginnen
nazwaPredyka. negate(nazwaPredykataDrugiego);
Interfejs consumer
Lernen beginnen
interfej ten coś robić, jakieś zadanie ale nic nie zwraca
Przykład consumer
Lernen beginnen
Consumer<klasa> nazwaMetody = typ -> test;
łaczeni consumer
Lernen beginnen
nazwaConsumer. abdThan(kolejnrConsumer)
co się stanie gdy w połaczanym consumer coś pojdzie nie tak
Lernen beginnen
kolejne consumer nie wykonaja się
supplier co przyjmuje i co zwraca
Lernen beginnen
nie przymuje żadnych argumentów a zwraca obiekt danego typu ty
Function - co robi
Lernen beginnen
Function przyjmuje jeden typ obiektu zmina go i zwracca inny typ obiektu
przykład interefejsi function
Lernen beginnen
Functiom<Studen, string> getStuden = studen -> student. getName()
BiFunction - co robi
Lernen beginnen
przmuje obiekty dwuch typów zwaca obiekt trzeciego typu

Sie müssen eingeloggt sein, um einen Kommentar zu schreiben.