Java,传递已实现接口的对象

Java,传递已实现接口的对象,java,smartgwt,Java,Smartgwt,下面的代码片段来自smartgwt的网站。在调用addButtonClickHandler方法时,接口ButtonClickHandler的实现作为匿名对象传递 final Dialog dialog = new Dialog(); dialog.setMessage("Please choose whether to proceed"); dialog.setIcon("[SKIN]ask.png"); dialog.setButtons(new B

下面的代码片段来自smartgwt的网站。在调用addButtonClickHandler方法时,接口ButtonClickHandler的实现作为匿名对象传递

    final Dialog dialog = new Dialog();
      dialog.setMessage("Please choose whether to proceed");
      dialog.setIcon("[SKIN]ask.png");
      dialog.setButtons(new Button("OK"), new Button("Cancel"));
      dialog.addButtonClickHandler(new ButtonClickHandler() {
          public void onButtonClick(ButtonClickEvent event) {
              dialog.hide();
          }
      });
     dialog.draw();    
ButtonClickHandler是一个接口,onButtonClick是唯一的方法。

这个概念被称为-一个不指定名称的内部类

匿名类使您的代码更加简洁。它们使您能够同时声明和实例化一个类。它们与本地类类似,只是没有名称

这在Swing、GWT等中更常用

匿名类通常用于图形用户界面(GUI)应用程序中

匿名类

您不必创建实现接口的类,该接口作为单独文件中的参数是必需的,然后初始化并传递它。您可以在需要的同一行中完成它。

正如您提到的
anonymous
内部类。@sᴜʀᴇsʜᴀᴛᴛᴀ <代码>内部类未提及。@user3218114这就是为什么我只引用了
匿名
@sᴜʀᴇsʜᴀᴛᴛᴀ 是的,没错。