Jak zaimplementować klasę adaptera w języku Java



Ten artykuł zawiera szczegółową i wszechstronną wiedzę na temat różnych typów klas adapterów w języku Java wraz z przykładami.

Klasa adaptera w to bardzo ciekawy temat, o którym każdy musi wiedzieć. W tym artykule omówimy następujące tematy:

Wprowadzenie do klasy adaptera

Klasy adapterów zapewniają implementację interfejsów nasłuchiwania. Dziedziczenie implementacji klasy adaptera dla wszystkich metod nie jest obowiązkowe. W ten sposób zapisywanie nadmiarowego kodu jest oszczędzane.





jak wyjść z programu java

Te klasy adapterów można znaleźć w pakietach java.awt.event, java.awt.dnd i javax.swing.event. Poniżej przedstawiono niektóre typowe klasy adapterów z odpowiadającymi im interfejsami nasłuchiwania.

  • java.awt.event
  • java.awt.dnd
  • javax.swing.event

java.awt.event



Klasa adaptera Interfejs słuchacza
WindowAdapter WindowListener
KeyAdapter
KeyListener
MouseAdapter
MouseListener
MouseMotionAdapter
MouseMotionListener
FocusAdapter FocusListener
ComponentAdapter ComponentListener
ContainerAdapter ContainerListener
HierarchyBoundsAdapter HierarchyBoundsListener

java.awt.dnd

Klasa adaptera Interfejs słuchacza
DragSourceAdapter DragSourceListener
DragTargetAdapter DragTargetListener

javax.swing.event

Klasa adaptera Interfejs słuchacza
MouseInputAdapter MouseInputListener
InternalFrameAdapter InternalFrameListener

Adapter myszy Java

import java.awt. * import java.awt.event. * public class MouseAdapterExample rozszerza MouseAdapter {Frame f MouseAdapterExample () {f = new Frame ('Mouse Adapter') f.addMouseListener (this) f.setSize (300,300) f. setLayout (null) f.setVisible (true)} public void mouseClicked (MouseEvent e) {Graphics g = f.getGraphics () g.setColor (Color.BLUE) g.fillOval (e.getX (), e.getY () , 30,30)} public static void main (String [] args) {new MouseAdapterExample ()}}

Klasa adaptera myszy w języku Java



Java MouseMotionAdapter

import java.awt. * import java.awt.event. * public class MouseMotionAdapterExample rozszerza MouseMotionAdapter {Frame f MouseMotionAdapterExample () {f = new Frame ('Mouse Motion Adapter') f.addMouseMotionListener (this) f.setSize (300,300) f .setLayout (null) f.setVisible (true)} public void mouseDragged (MouseEvent e) {Graphics g = f.getGraphics () g.setColor (Color.ORANGE) g.fillOval (e.getX (), e.getY ( ), 20,20)} public static void main (String [] args) {new MouseMotionAdapterExample ()}}

Klasa Java KeyAdapter

import java.awt. * import java.awt.event. * public class KeyAdapterExample extends KeyAdapter {Label l TextArea area Frame f KeyAdapterExample () {f = new Frame ('Key Adapter') l = new Label () l.setBounds ( 20,50,200,20) area = new TextArea () area.setBounds (20,80,300, 300) area.addKeyListener (this) f.add (l) f.add (area) f.setSize (400,400) f.setLayout ( null) f.setVisible (true)} public void keyReleased (KeyEvent e) {String text = area.getText () String words [] = text.split (' s') l.setText ('Words:' + words. length + 'Characters:' + text.length ())} public static void main (String [] args) {new KeyAdapterExample ()}}

Zalety klasy adaptera

Pomaga niepowiązanym klasom współpracować i zapewnia możliwość korzystania z klas na wiele sposobów. Może zwiększyć przejrzystość zajęć. Klasa adaptera umożliwia dołączanie pokrewnych wzorców do klasy. Użytkownicy mają do wyboru zestaw wtykowy do tworzenia aplikacji. W ten sposób użycie klas staje się wysoce wielokrotnego użytku.

poczekaj i powiadom w java

Wzorzec projektowy adaptera

Wzorzec projektowy adaptera to wzorzec projektowy konstrukcji, który umożliwia współpracę dwóch różnych interfejsów. Wzorzec adaptera może zapewnić zgodność dwóch niekompatybilnych interfejsów bez zmiany ich istniejącego kodu. Odpowiednie interfejsy mogą być niekompatybilne, ale wewnętrzne funkcje powinny odpowiadać wymaganiom.

Wzorzec adaptera jest często dostosowywany do istniejącej klasy z innymi bez modyfikowania ich kodu źródłowego. Ponadto wykorzystują jedną klasę do łączenia funkcjonalności niezależnych lub niekompatybilnych interfejsów. Inna nazwa wzoru adaptera jest znana jako wrapper, czyli jest to alternatywna nazwa wspólna z wzorcem projektowym dekoratora.

Wzorzec konwertuje również niezgodne interfejsy klasy na różne interfejsy, które są niczym innym jak celem. Tego właśnie wymagają klienci. Wzorce adapterów pozwalają również klasom współpracować, w przeciwnym razie interfejsy działałyby razem prawie niekompatybilne. Aby spojrzeć na sprawy z perspektywy, rozważ osobę, która często podróżuje do różnych krajów ze swoim laptopem i telefonem komórkowym.

Istnieją różne gniazda elektryczne, napięcia i częstotliwości mierzone w różnych krajach, co sprawia, że ​​używanie dowolnego urządzenia z jednego kraju jest kompatybilne w innym kraju. W Wielkiej Brytanii powszechnie używane jest gniazdo typu G o napięciu 230 V i częstotliwości 50 Hz.

różnica między szefem kuchni a marionetką

W USA praktykowane są gniazda typu A i typu B o napięciu 120 V i częstotliwości 60 Hz. W Indiach używane są gniazda typu C, typu D. i typu M o napięciu 230 V i częstotliwości 50 Hz. Wreszcie w Japonii używane są gniazda typu A i typu B o napięciu 110 woltów i częstotliwości 50 Hz. W związku z tym można stwierdzić, że przewożone przez nas urządzenia mogą być niezgodne ze specyfikacjami elektrycznymi, które mamy w różnych miejscach. Podobnie narzędzia adaptera są niezbędne, ponieważ mogą konwertować niezgodny kod na zgodny kod.

W ten sposób dochodzimy do końca tej klasy adapterów w języku 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 Java J2EE i SOA Edureka jest przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistą 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 „Klasa adaptera w Javie”, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.