Как реализовать класс адаптера в Java



Эта статья предоставит вам подробные и всесторонние знания о различных типах классов адаптера в Java с примерами.

Класс адаптера в это очень интересная тема, о которой должен знать каждый. В этой статье мы обсудим следующие темы:

Введение в класс адаптера

Классы адаптеров обеспечивают реализацию интерфейсов слушателей. При наследовании класса адаптера реализация всех методов не является обязательной. Таким образом сохраняется написание лишнего кода.





Эти классы адаптеров можно найти в пакетах java.awt.event, java.awt.dnd и javax.swing.event. Некоторые из общих классов адаптеров с соответствующими интерфейсами слушателей приведены ниже.

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

java.awt.event



Класс адаптера Интерфейс слушателя
WindowAdapter WindowListener
KeyAdapter
KeyListener
MouseAdapter
MouseListener
MouseMotionAdapter
MouseMotionListener
FocusAdapter FocusListener
Компонентный адаптер ComponentListener
Контейнер Адаптер ContainerListener
HierarchyBoundsAdapter HierarchyBoundsListener

java.awt.dnd

Класс адаптера Интерфейс слушателя
DragSourceAdapter DragSourceListener
DragTargetAdapter DragTargetListener

javax.swing.event

Класс адаптера Интерфейс слушателя
MouseInputAdapter MouseInputListener
InternalFrameAdapter InternalFrameListener

Адаптер для мыши Java

import java.awt. * import java.awt.event. * открытый класс MouseAdapterExample расширяет 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 ()}}

Класс адаптера мыши в Java



Java MouseMotionAdapter

import java.awt. * import java.awt.event. * открытый класс MouseMotionAdapterExample extends 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 ()}}

Класс Java KeyAdapter

import java.awt. * import java.awt.event. * открытый класс KeyAdapterExample расширяет 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 ()}}

Преимущества класса адаптера

Он помогает несвязанным классам работать вместе и предоставляет возможность использовать классы разными способами. Это может повысить прозрачность занятий. Класс адаптера предоставляет способ включения связанных шаблонов внутри класса. Пользователям предоставляется возможность сменного комплекта для разработки приложений. Таким образом, использование классов становится очень многоразовым.

Шаблон проектирования адаптера

Шаблон проектирования адаптера - это шаблон структурного проектирования, который позволяет двум различным интерфейсам работать вместе. Шаблон адаптера позволяет сделать два несовместимых интерфейса совместимыми без изменения их существующего кода. Соответствующие интерфейсы могут быть несовместимы, но внутренние функции должны соответствовать требованиям.

Шаблон адаптера часто создается для соответствия существующему классу с другими без изменения их исходного кода. Кроме того, они используют один класс для объединения функций независимых или несовместимых интерфейсов. Другое имя шаблона адаптера известно как оболочка, т. Е. Это альтернативное имя, совместно используемое с шаблоном проектирования декоратора.

Шаблон также преобразует несовместимые интерфейсы класса в разные интерфейсы, которые являются не чем иным, как целью. Это то, что в конечном итоге требуется клиентам. Шаблоны адаптеров также позволяют классам работать вместе, иначе взаимодействие интерфейсов было бы практически несовместимым. Чтобы увидеть ситуацию в перспективе, представьте, что человек часто путешествует по разным странам со своим ноутбуком и мобильным телефоном.

сортировка массива c ++ по возрастанию

Существуют разные электрические розетки, напряжения и частота, измеряемые в разных странах, что делает использование любого устройства одной страны совместимым с другой. В Великобритании обычно используется розетка типа G с напряжением 230 В и частотой 50 Гц.

В США практикуются розетки типа A и типа B на 120 вольт и частотой 60 Гц. В Индии используются розетки типа C, типа D. и типа M на 230 В и 50 Гц. Наконец, в Японии используются розетки типа A и типа B с напряжением 110 вольт и частотой 50 Гц. Таким образом, можно сделать вывод, что приборы, которые мы несем, могут быть несовместимы с электрическими характеристиками, которые мы имеем в разных местах. Точно так же инструменты адаптера важны, потому что они могут преобразовывать несовместимый код в совместимый.

На этом мы подошли к концу этого класса адаптера в Java. Проверьте от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учащихся по всему миру. Курс обучения и сертификации по Java J2EE и SOA от Edureka предназначен для студентов и профессионалов, которые хотят стать Java-разработчиками. Курс разработан, чтобы дать вам хорошее начало в программировании на Java и обучить вас как основным, так и продвинутым концепциям Java, а также различным средам Java, таким как Hibernate и Spring.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев в блоге «Класс адаптера в Java», и мы свяжемся с вами как можно скорее.