Wszystko, co musisz wiedzieć o luźnym sprzężeniu w Javie



W tym artykule znajdziesz szczegółową i wszechstronną wiedzę na temat implementacji Loose Coupling w Javie wraz z przykładami.

Nazywa się stopień bezpośredniego wykorzystania jednego elementu przez inny element sprzęganie w projektowaniu obiektowym. W tym artykule zrozumiemy luźne sprzężenie w w następującej kolejności:

Typy sprzęgania w Javie

Istnieją dwa rodzaje połączeń:





  • Ciasne połączenie : Kiedy obiekt tworzy obiekt, który ma być używany, jest wywoływany szczelne połączenie .
  • Luźne powiązanie : Kiedy obiekt pobiera obiekt do użycia ze źródeł zewnętrznych, nazywamy to luźne powiązanie .

W tym artykule przyjrzymy się luźnemu sprzężeniu w Javie i zobaczymy, jak je zaimplementować.

Co to jest Loose Coupling w Javie?

Kiedy obiekt pobiera obiekt do użycia ze źródeł zewnętrznych, nazywamy to luźne powiązanie .



Innymi słowy, luźne sprzężenie oznacza, że ​​obiekty są niezależne. Luźno powiązany kod zmniejsza konserwacja i wysiłki. Była to wada ściśle powiązanego kodu, który został usunięty przez luźno powiązany kod.

Loose Coupling w Javie

przy użyciu klasy skanera w java

Wyobraź sobie, że istnieją dwie klasy A i B. Klasa A ma tylko trochę informacji o klasie B, które zostały ujawnione przez interfejs,wtedy mówi się, że są to klasy A i B. Luźno powiązane .



Kod luźnego sprzęgła:

import java.io.IOException interface Animal {public void display ()} class Dog {Animal s public Dog (Animal s) {this.s = s} public void display () {System.out.println ('Pies') s .display ()}} class Kot implementuje Animal {public Cat () {} public void display () {System.out.println ('Cat')}} class Krowa osprzęt Animal {public Cow () {} public void display ( ) {System.out.println ('Cow')}} public class Test {public static void main (String args []) throws IOException {Animal b = new Cat () Animal c = new Cow () Dog a = new Dog (b) //a.display () wypisze psa i kota a.display () Dog a1 = new Dog (c) //a.display () wypisze pies i krowę a1.display ()}}

WYNIK:

WYJAŚNIENIE:

Przeciążanie metody vs przesłanianie metody

Wszystkie 3 klasy w powyższym kodzie są luźno powiązane. Oznacza to, że można wykorzystać interfejs zwierzątświadczyć usługi użytkownikowi ben, wstrzykując dowolną z zaimplementowanych klas.

Różnica między złączem ciasnym a luźnym

  • Luźne połączenie ma lepszą zdolność testowania niż ciasne połączenie.

  • Luźne połączenie jest zgodne z zasadami GOF programu do interfejsu, a nie implementacji, podczas gdy ścisłe połączenie nie zapewnia koncepcji interfejsu.

  • Łatwo jest zamienić fragment kodu / obiekty między dwiema klasami w luźnym połączeniu, podczas gdy nie jest to takie łatwe w przypadku ścisłego połączenia

  • Luźne połączenie jest bardzo zmienne, podczas gdy ścisłe - nie.

Podsumowując, Ścisłe połączenie jest znacznie gorsze w porównaniu z luźnym sprzężeniem, ponieważ zmniejsza elastyczność i możliwość ponownego wykorzystania kodu, wprowadzanie zmian jest również bardzo trudne w przypadku ścisłego połączenia. Wszystkie wady szczelnego połączenia i usunięte w luźnym połączeniu.

W ten sposób dochodzimy do końca tego artykułu Loose Coupling In Java. Mam nadzieję, że wiesz, jak działa sprzęgło i co to jest sprzęgło luźne.

klasa skanera w przykładzie java

Sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Szkolenie i certyfikacja J2EE i SOA firmy Edureka jest przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistami Java. Kurs ma na celu zapewnienie przewagi w programowaniu w języku Java i przeszkolenie zarówno podstawowych, jak i zaawansowanych koncepcji języka Java, a także różnych struktur Java, takich jak Hibernate i Spring.

Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy na blogu „Loose Coupling In Java”, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.