Video: làm chủ lập trình C của tin học đại cương 1 một đêm 2025
Đây là một bí mật được giữ tốt: các chương trình Java là đa luồng, nghĩa là một vài điều xảy ra cùng một lúc bất cứ khi nào bạn chạy một chương trình Java. Chắc chắn, máy tính đang chạy mã mà bạn đã viết, nhưng nó cũng chạy mã khác (mã mà bạn không viết và không thấy).
Tất cả mã này đang được thực hiện cùng một lúc. Trong khi máy tính thực hiện các câu lệnh của chính phương án của bạn, cái khác, máy tính cần thời gian, lén đi một cách ngắn gọn, và thực hiện các tuyên bố từ một số phương pháp khác, không nhìn thấy. Đối với hầu hết các chương trình Java đơn giản, những phương pháp khác là những chương trình được xác định là một phần của Máy ảo Java (JVM).
Ví dụ, Java có một thread xử lý sự kiện. Trong khi mã của bạn chạy, mã xử lý sự kiện của đoạn mã chạy dưới nền. Mã của thread xử lý sự kiện lắng nghe cho các nhấp chuột và có hành động thích hợp bất cứ khi nào người dùng nhấp chuột. Hình minh hoạ cách hoạt động này.
Khi người dùng nhấp vào nút, chủ đề xử lý sự kiện nói, "Được rồi, nút đã được nhấp. Vì vậy, tôi nên làm gì về điều đó? "Và câu trả lời là," Gọi một số phương thức actionPerformed. "Như thể thread xử lý sự kiện có mã giống như sau:
if (buttonJustGotClicked ()) {object1. actionPerformed (infoAboutTheClick); object2. actionPerformed (infoAboutTheClick); object3. actionPerformed (infoAboutTheClick);}
Tất nhiên, đằng sau mỗi câu trả lời là một câu hỏi khác. Trong trường hợp này, câu hỏi tiếp theo là "Trường hợp xử lý sự kiện thread tìm actionPerformed phương pháp để gọi? "Và có một câu hỏi khác:" Điều gì xảy ra nếu bạn không muốn thread xử lý sự kiện gọi một số phương thức actionPerformed được ẩn trong mã của bạn? "
Vâng, đó là lý do tại sao bạn gọi phương thức addActionListener. Trong danh sách, nút gọi
. addActionListener (này);
cho biết thread xử lý sự kiện, "Đặt phương thức actionPerformed của mã này vào danh sách các phương thức của bạn để được gọi. Gọi phương thức actionPerformed của mã này bất cứ khi nào nút được nhấp. "
Vậy, đó là cách nó hoạt động. Để máy tính gọi phương thức actionPerformed, bạn đăng ký phương thức với chủ đề xử lý sự kiện của Java. Bạn thực hiện đăng ký này bằng cách gọi addActionListener. Phương thức addActionListener thuộc về đối tượng có các nhấp chuột (và các sự kiện khác) bạn đang chờ đợi.
Trong danh sách, bạn đang đợi đối tượng nút được nhấp vào, và phương thức addActionListener thuộc về đối tượng nút đó.