Rumah >Java >javaTutorial >Bagaimana untuk melaksanakan pemantauan acara dalam kelas dalaman tanpa nama Java?
Kelas dalaman tanpa nama digunakan untuk melaksanakan pemantauan acara tanpa membuat fail kelas berasingan, memudahkan proses. Sintaksnya ialah: 803d012befffc980e9771cd4c4a17694 baharu; Sebagai contoh, dalam kelas Button, menambah pendengar ActionListener boleh dicapai melalui kelas dalaman tanpa nama yang kaedah actionPerformednya mencetak mesej apabila butang diklik. Ia memudahkan kod dan meningkatkan kebolehbacaan, tetapi hanya mengakses pembolehubah tempatan dan tidak mempunyai pembina atau medan.
Cara kelas dalaman tanpa nama Java melaksanakan pemantauan acara
Kelas dalaman tanpa nama ialah kelas khas di Java yang tidak mempunyai nama dan diwarisi secara langsung daripada kelas lain. Penggunaan biasa kelas dalaman tanpa nama adalah untuk melaksanakan mendengar acara.
Sintaks:
new <SuperClass> { // 实现接口中声明的方法 }
Kes praktikal:
Andaikan kita mempunyai kelas Button
, yang mempunyai kaedah addActionListener
yang membolehkan kami menambah pendengar. Objek pendengar perlu melaksanakan antara muka ActionListener
, yang mengisytiharkan kaedah bernama actionPerformed
. Button
类,它有一个 addActionListener
方法,允许我们添加监听器对象。监听器对象需要实现 ActionListener
接口,该接口声明了一个名为 actionPerformed
的方法。
以下代码展示了如何使用匿名内部类实现 ActionListener
:
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Main { public static void main(String[] args) { // 创建一个按钮 Button button = new Button("Click me"); // 添加一个匿名内部类作为监听器 button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // 当按钮被点击时执行的操作 System.out.println("Button clicked!"); } }); } }
当按钮被点击时,匿名内部类中的 actionPerformed
ActionListener
: rrreeeApabila butang diklik, kaedah actionPerformed
dalam kelas dalaman tanpa nama akan menjadi dipanggil dan dicetak Mesej "Butang diklik!".
Ia menjadikan kod lebih bersih dan lebih mudah dibaca.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pemantauan acara dalam kelas dalaman tanpa nama Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!