Czysta funkcja vs. Nieczyste funkcje w Javie

Czysta funkcja vs. Nieczyste funkcje w Javie
W Javie funkcje odgrywają istotną rolę w sortowaniu skumulowanych funkcji kodu. W takich przypadkach „czysty" I "zanieczyszczony”Funkcje wchodzą w życie. Oba te typy funkcji mają swoje zalety i wskaźniki w zależności od wdrożonych funkcji. Jest tak, że czyste funkcje wspomagają usprawnienie funkcji kodu, podczas gdy nieczyste funkcje można rozważyć w celu lepszej wydajności.

Ten blog pokaże wykorzystanie i różnice między funkcjami „czystymi” i „nieczystymi” w Javie.

Jaka jest „czysta” funkcja w Javie?

A "czysty”Funkcja odpowiada funkcji braku skutków ubocznych. Jest to takie, że żadna wartość zewnętrzna lub zewnętrzna modyfikacja funkcji nie może na nie wpływ. Ponadto funkcje te zawsze dają identyczne wyniki, niezależnie od liczby przywoływanych tych.

Przykład 1: Zastosowanie funkcji „czystej” w Javie
W tym przykładzie można zastosować i wywołać czystą funkcję:

Klasa publiczna PureFunction
statyczne int multiplynumbers (int a, int b)
zwrócić * b;

public static void main (string args [])
System.na zewnątrz.println („Powstałe mnożenie to:”+ multiplynumbers (4, 5));

Zgodnie z powyższym fragmentem kodu:

  • Po pierwsze, zdefiniuj czystą funkcję o nazwie „multiplynumbers ()".
  • Parametry funkcji wskazują na przekazane liczby całkowite, które należy ocenić w celu mnożenia.
  • Wreszcie w „główny()”Metoda, wywołaj zdefiniowaną funkcję i przekazuj podane liczby całkowite jako argumenty funkcji, które należy obliczyć do mnożenia.

Wyjście

W tym wyniku można przeanalizować, że ta funkcja, ja.mi., "czysty”Nie ma wpływu żadna inna funkcjonalność zewnętrzna. Jest takie, że mnożenie jest zwracane niezależnie od jakiegokolwiek zakłócenia obliczeń zewnętrznych.

Jaka jest „nieczysta” funkcja w Javie?

Jakiś "zanieczyszczony”Funkcja odnosi się do funkcji o jednym lub więcej skutkach ubocznych. Jest tak, że wartość zewnętrzna może mieć wpływ na te funkcje.

Przykład 2: Zastosowanie funkcji „nieczystej” w Javie
Poniższy przykład ma zastosowanie i uzyskuje dostęp do nieczystej funkcji:

Ucieżka klas publicznych
statyczna liczba int = 2;
static int multiplynumbers (int num)
Numer zwroty *= num;

public static void main (string args [])
System.na zewnątrz.println („Powstałe mnożenie to:”+multiplynumbers (3));

Zgodnie z powyższymi wierszami kodu:

  • Po pierwsze, zainicjuj podaną liczbę całkowitą.
  • W następnym kroku zadeklaruj nieczystą funkcję o nazwie „multiplynumbers ()”Posiadanie określonego parametru odnoszącego się do przełomowej liczby całkowitej.
  • W definicji funkcji zwróć mnożenie zainicjowanej zmiennej poza zakresem funkcji i przekazanej liczby całkowitej odpowiednio jako argument funkcji.
  • Analiza: W tym momencie można przeanalizować, że na funkcję wpływa wartość zewnętrzna.
  • W "główny()„Metoda, uzyskuj dostęp do zdefiniowanej funkcji, przekazując podaną liczbę całkowitą jako jej argument.
  • W rezultacie mnożenie zostanie zwrócone za pomocą zmiennej zewnętrznej modyfikującej funkcję, czyniąc ją w ten sposób „zanieczyszczony".

Wyjście

Ten wygenerowany wynik oznacza, że ​​funkcja ma efekty zewnętrznego „liczba całkowita”, W ten sposób„ czyniąc to ”zanieczyszczony".

Różnice podstawowe między funkcjami czystymi i nieczystymi w Javie

Poniżej znajdują się pewne podstawowe różnice między obiema określonymi funkcjami:

Czyste funkcje Nieczyste funkcje
Czyste funkcje nie mają skutków ubocznych. Te funkcje mogą mieć skutki uboczne.
Te funkcje są wygodne do odczytania. Nieczyste funkcje są nieco trudne do odczytania.
Zawsze zwracają jakąś wartość. Funkcje te mogą wejść bez zwracania żadnej wartości.
Czyste funkcje zawsze zwracają ten sam wynik, niezależnie od liczby dostępu do niego. Z drugiej strony nieczyste funkcje zwracają inny wynik przy każdym kolejnym wywołaniu funkcji.
Te funkcje są wygodne do debugowania. Te funkcje są nieco trudne do debugowania.

Chodziło o wykorzystanie i podstawowe różnice między funkcjami czystymi i nieczystymi w Javie.

Wniosek

W Javie „A”czysty”Funkcja odpowiada funkcji nie mającej skutków ubocznych, podczas gdy„ ”zanieczyszczony”Funkcja może mieć jeden lub więcej skutków ubocznych. Pierowej funkcji nie można modyfikować wartością zewnętrzną, utrzymując w ten sposób zakres i generując prawdopodobny wynik. Z drugiej strony ta ostatnia funkcja można modyfikować za pomocą wartości zewnętrznej. Ten blog opracował wykorzystanie i różnice między funkcjami „czystymi” i „nieczystymi” w Javie.