Sådan implementeres adapterklasse i Java

Denne artikel giver dig en detaljeret og omfattende viden om forskellige typer adapterklasser i Java med eksempler.

Adapterklasse i er et meget interessant emne, som alle skal vide om. I denne artikel vil vi diskutere følgende emner:



Introduktion til adapterklasse

Adapterklasser giver en implementering af lyttergrænseflader. Når du arver adapterklassens implementering for alle metoder er ikke obligatorisk. Således gemmes skrivning af overskydende kode.



Disse adapterklasser findes i pakkerne java.awt.event, java.awt.dnd og javax.swing.event. Nogle af de almindelige adapterklasser med tilsvarende lyttergrænseflader er angivet nedenfor.

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

java.awt.event



Adapterklasse Lyttergrænseflade
WindowAdapter WindowListener
KeyAdapter
KeyListener
Museadapter
MouseListener
MouseMotionAdapter
MouseMotionListener
Fokusadapter FocusListener
Komponentadapter ComponentListener
Containeradapter ContainerListener
HierarchyBoundsAdapter HierarchyBoundsListener

java.awt.dnd

Adapterklasse Lyttergrænseflade
DragSourceAdapter DragSourceListener
DragTargetAdapter DragTargetListener

javax.swing.event

Adapterklasse Lyttergrænseflade
MouseInputAdapter MouseInputListener
InternalFrameAdapter InternalFrameListener

Java-museadapter

import java.awt. * import java.awt.event. * public class MouseAdapterExample udvider 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 ()}}

Museadapterklasse i Java



Java MouseMotionAdapter

import java.awt. * import java.awt.event. * offentlig klasse MouseMotionAdapterExample udvider MouseMotionAdapter {Frame f MouseMotionAdapterExample () {f = new Frame ('Mouse Motion Adapter') f.addMouseMotionListener (denne) 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 ()}}

Java KeyAdapterklasse

import java.awt. * import java.awt.event. * public class KeyAdapterExample udvider KeyAdapter {Etiket l TextArea område Ramme f KeyAdapterExample () {f = ny ramme ('Key Adapter') l = ny label () l.setBounds ( 20,50,200,20) areal = nyt TextArea () area.setBounds (20,80,300, 300) area.addKeyListener (dette) 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. længde + 'Tegn:' + tekst.længde ())} offentlig statisk ugyldig hoved (String [] args) {new KeyAdapterExample ()}}

Fordele ved adapterklassen

Det hjælper ikke-relaterede klasser til at arbejde sammen og giver en måde at bruge klasser på flere måder. Det kan være i stand til at øge gennemsigtigheden i klasser. En adapterklasse giver en måde at inkludere relaterede mønstre inde i en klasse. Brugere får mulighed for et stik, der kan tilsluttes til udvikling af applikationer. Således bliver brugen af ​​klasser meget genanvendelig.

Adapterdesignmønster

Et adapterdesignmønster er et strukturelt designmønster, der gør det muligt for to forskellige grænseflader at arbejde sammen. Adaptermønsteret er i stand til at gøre to inkompatible grænseflader kompatible uden at ændre deres eksisterende kode. De tilsvarende grænseflader kan være inkompatible, men indre funktionaliteter skal matche kravet.

java støbt dobbelt til int

Adaptermønsteret er ofte lavet til at passe til en eksisterende klasse med andre uden at ændre deres kildekode. Derudover bruger de en enkelt klasse til at slutte sig til funktionerne i uafhængige eller uforenelige grænseflader. Et andet navn på adaptermønsteret er kendt som indpakningen, dvs. det er et alternativt navn, der deles med dekoratørdesignmønsteret.

Mønsteret konverterer også de klasses uforenelige grænseflader til forskellige grænseflader, der kun er målet. Dette er hvad kunderne i sidste ende har brug for. Adaptermønstre lader også klasser arbejde sammen ellers ville det være næsten inkompatibelt for grænseflader at fungere sammen. For at bringe tingene i perspektiv skal du overveje en person, der ofte rejser til forskellige lande med sin bærbare computer og mobil.

Der er forskellige stikkontakter, spændinger og frekvens målt i forskellige lande, og det gør brugen af ​​ethvert apparat i et land kompatibel i et andet land. I Storbritannien er der almindeligvis brugt en type G-sokkel med 230 volt og 50 Hz frekvens.

I USA praktiseres en type A og type B-stik med 120 volt og 60 Hz frekvens. I Indien anvendes Type C, Type D. og Type M-stik med 230 volt og 50 Hz. Endelig anvendes i Japan Type A og Type B-stik med 110 volt og 50 Hz frekvens. Således kan det konkluderes, at de apparater, vi bærer, kan være uforenelige med de elektriske specifikationer, vi har forskellige steder. Tilsvarende er adapterværktøjer vigtige, fordi de kan konvertere inkompatibel kode til kompatibel kode.

Med dette kommer vi til slutningen af ​​denne adapterklasse i Java. Tjek af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-kursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Adapterklasse i Java' -blog, og vi vender tilbage til dig hurtigst muligt.