Клас на адаптера в е много интересна тема, за която всеки трябва да знае. В тази статия ще обсъдим следните теми:
def __init __ (самостоятелно)
- Въведение в адаптерния клас
- Клас на адаптер за мишка Java
- Клас Java MouseMotionAdapter
- Клас на Java KeyAdapter
- Предимства на адаптерния клас
- Шаблон за дизайн на адаптера
Въведение в адаптерния клас
Класовете на адаптери осигуряват реализация на интерфейси за слушане. Когато наследявате изпълнението на адаптерния клас за всички методи не е задължително. Така записването на излишния код се запазва.
Тези класове на адаптери могат да бъдат намерени в пакетите 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 |
ComponentAdapter | ComponentListener |
ContainerAdapter | 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. * public class 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 MouseMotionAdapter
import java.awt. * import java.awt.event. * public class MouseMotionAdapterExample разширява MouseMotionAdapter {Frame f MouseMotionAdapterExample () {f = new Frame ('Mouse Motion Adapter') f.addMouseMotionListener (this) f.set fize (300) f.setSize (300) f.setSize ( .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)} публична статична празнота main (String [] args) {new MouseMotionAdapterExample ()}}
Клас на 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 ()}}
Предимства на адаптерния клас
Той подпомага несвързаните класове да работят заедно и предоставя начин за използване на класове по множество начини. Той може да може да увеличи прозрачността на класовете. Класът на адаптер предоставя начин за включване на свързани модели в клас. На потребителите се предоставя опция за включен комплект за разработване на приложения. По този начин използването на класове става многократно използваемо.
pivot и unpivot в sql
Шаблон за дизайн на адаптера
Шаблонът за проектиране на адаптер е структурен модел на проектиране, който позволява два различни интерфейса да работят заедно. Шаблонът на адаптера е способен да направи два несъвместими интерфейса съвместими, без да променя техния съществуващ код. Съответните интерфейси може да са несъвместими, но вътрешните функционалности трябва да отговарят на изискванията.
Шаблонът на адаптера често се прави, за да отговаря на съществуващ клас с други, без да променя техния изходен код. Освен това те използват един клас, за да се присъединят към функционалности на независими или несъвместими интерфейси. Друго име за модела на адаптера е известно като обвивка, т.е. това е алтернативно име, споделено с дизайна на декоратора.
Моделът също така преобразува несъвместимите интерфейси на клас в различни интерфейси, които не са нищо друго освен целта. В крайна сметка това изискват клиентите. Шаблоните на адаптерите също позволяват на класовете да работят заедно, иначе би било почти несъвместимо за интерфейсите да функционират заедно. За да представите нещата в перспектива, помислете за човек, който пътува често в различни страни със своя лаптоп и мобилен телефон.
Има различни електрически контакти, напрежения и честота, измерени в различни страни и това прави използването на всеки уред от една държава съвместим в различна държава. Във Великобритания често се използва гнездо тип G с 230 волта и честота 50 Hz.
В САЩ се практикуват контакти тип A и тип B със 120 волта и честота 60 Hz. В Индия се използват гнезда тип C, тип D. и тип M с 230 волта и 50 Hz. И накрая, в Япония се използват гнезда тип A и тип B със 110 волта и честота 50 Hz. По този начин може да се заключи, че уредите, които носим, може да са несъвместими с електрическите спецификации, които имаме на различни места. По същия начин адаптерните инструменти са от съществено значение, тъй като могат да преобразуват несъвместим код в съвместим код.
маркер интерфейс в Java пример
С това стигнахме до края на този клас адаптер в Java. Вижте от Edureka, доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят. Курсът за обучение и сертифициране на Java J2EE и SOA на Edureka е предназначен за студенти и професионалисти, които искат да бъдат Java Developer. Курсът е предназначен да ви даде начален старт в програмирането на Java и да ви обучи както за основни, така и за разширени Java концепции, заедно с различни Java рамки като Hibernate & Spring.
Имате въпрос към нас? Моля, споменете го в раздела за коментари в този блог „Клас на адаптера в Java“ и ние ще се свържем с вас възможно най-скоро.