Cách triển khai lớp tiếp hợp trong Java

Bài viết này sẽ cung cấp cho bạn kiến ​​thức chi tiết và toàn diện về các loại lớp Adapter trong Java với các ví dụ.

Lớp tiếp hợp trong là một chủ đề rất hấp dẫn mà chắc hẳn ai cũng biết. Trong bài viết này, chúng tôi sẽ thảo luận về các chủ đề sau:



Giới thiệu về Lớp Bộ điều hợp

Các lớp bộ điều hợp cung cấp việc triển khai các giao diện người nghe. Khi bạn kế thừa việc triển khai lớp bộ điều hợp cho tất cả các phương thức là không bắt buộc. Do đó việc viết mã thừa được lưu lại.



Các lớp bộ điều hợp này có thể được tìm thấy trong các gói java.awt.event, java.awt.dnd và javax.swing.event. Dưới đây là một số lớp bộ điều hợp phổ biến với giao diện trình nghe tương ứng.

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

java.awt.event



Lớp tiếp hợp Giao diện người nghe
WindowAdapter WindowListener
KeyAdapter
KeyListener
MouseAdapter
MouseListener
MouseMotionAdapter
MouseMotionListener
FocusAdapter FocusListener
ComponentAdapter ComponentListener
ContainerAdapter ContainerListener
HierarchyBoundsAdapter HierarchyBoundsListener

java.awt.dnd

cách kết thúc một phương thức trong java
Lớp tiếp hợp Giao diện người nghe
DragSourceAdapter DragSourceListener
DragTargetAdapter DragTargetListener

javax.swing.event

Lớp tiếp hợp Giao diện người nghe
MouseInputAdapter MouseInputListener
InternalFrameAdapter InternalFrameListener

Bộ điều hợp chuột Java

import java.awt. * import java.awt.event. * public class MouseAdapterExample mở rộng MouseAdapter {Frame f MouseAdapterExample () {f = new Frame ('Mouse Adapter') f.addMouseListener (this) f.setSize (300.300) f. setLayout (null) f.setVosystem (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 ()}}

Lớp tiếp hợp chuột trong Java



Java MouseMotionAdapter

import java.awt. * import java.awt.event. * public class MouseMotionAdapterExample mở rộng MouseMotionAdapter {Frame f MouseMotionAdapterExample () {f = new Frame ('Mouse Motion Adapter') f.addMouseMotionListener (this) f.setSize (300.300) f .setLayout (null) f.setVosystem (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 ()}}

Lớp Java KeyAdapter

import java.awt. * import java.awt.event. * public class KeyAdapterExample mở rộng 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.setVosystem (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 ()}}

Ưu điểm của lớp tiếp hợp

Nó hỗ trợ các lớp không liên quan làm việc cùng nhau và cung cấp cách sử dụng các lớp theo nhiều cách. Nó có thể tăng tính minh bạch của các lớp. Một lớp bộ điều hợp cung cấp một cách để bao gồm các mẫu liên quan bên trong một lớp. Người dùng được cung cấp một tùy chọn về bộ công cụ có thể cắm được để phát triển các ứng dụng. Do đó, việc sử dụng các lớp trở nên có khả năng tái sử dụng cao.

lớp máy quét trong các ví dụ java

Mẫu thiết kế bộ điều hợp

Mẫu thiết kế bộ điều hợp là một mẫu thiết kế cấu trúc, cho phép hai giao diện khác nhau hoạt động cùng nhau. Mẫu bộ điều hợp có khả năng làm cho hai giao diện không tương thích tương thích mà không cần thay đổi mã hiện có của chúng. Các giao diện tương ứng có thể không tương thích, nhưng các chức năng bên trong phải phù hợp với yêu cầu.

Mẫu bộ điều hợp thường được tạo ra để phù hợp với một lớp hiện có với những lớp khác mà không cần sửa đổi mã nguồn của chúng. Ngoài ra, chúng sử dụng một lớp duy nhất để tham gia các chức năng của các giao diện độc lập hoặc không tương thích. Một tên khác cho mẫu bộ điều hợp được gọi là trình bao bọc, tức là nó là một tên thay thế được chia sẻ với mẫu thiết kế trang trí.

Mẫu này cũng chuyển đổi các giao diện không tương thích của một lớp thành các giao diện khác nhau không là gì khác ngoài mục tiêu. Đây là những gì khách hàng yêu cầu cuối cùng. Các mẫu bộ điều hợp cũng cho phép các lớp hoạt động cùng nhau, nếu không thì hầu như không tương thích để các giao diện hoạt động cùng nhau. Để đưa mọi thứ vào góc nhìn, hãy xem xét một người thường xuyên đi du lịch đến các quốc gia khác nhau bằng máy tính xách tay và điện thoại di động của mình.

Có các ổ cắm điện, điện áp và tần số khác nhau được đo ở các quốc gia khác nhau và điều đó làm cho việc sử dụng bất kỳ thiết bị nào của một quốc gia phải tương thích ở một quốc gia khác. Ở Anh, ổ cắm Loại G với 230 vôn và tần số 50 Hz thường được sử dụng.

Ở Mỹ, ổ cắm Loại A và Loại B có 120 vôn và tần số 60 Hz được thực hành. Ở Ấn Độ sử dụng ổ cắm Loại C, Loại D. và Loại M với 230 vôn và 50 Hz. Cuối cùng, ở Nhật Bản, ổ cắm Loại A và Loại B với 110 vôn và tần số 50 Hz được sử dụng. Do đó, có thể kết luận rằng các thiết bị chúng tôi mang theo có thể không tương thích với các thông số kỹ thuật điện mà chúng tôi có ở những nơi khác nhau. Tương tự, các công cụ bộ điều hợp rất cần thiết vì chúng có thể chuyển đổi mã không tương thích thành mã tương thích.

Với điều này, chúng ta đến phần cuối của Lớp tiếp hợp này trong Java. Kiểm tra của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu. Khóa đào tạo và cấp chứng chỉ về Java J2EE và SOA của Edureka được thiết kế cho sinh viên và các chuyên gia muốn trở thành Nhà phát triển Java. Khóa học được thiết kế để cung cấp cho bạn khởi đầu về lập trình Java và đào tạo bạn về cả khái niệm Java cốt lõi và nâng cao cùng với các khung Java khác nhau như Hibernate & Spring.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của blog “Lớp tiếp hợp trong Java” này và chúng tôi sẽ liên hệ lại với bạn sớm nhất có thể.