易截截图软件、单文件、免安装、纯绿色、仅160KB

Java内部类访问外部对象的方法

  Java编程时,为类DialogTry2添加关闭窗口事件,我在构造方法中采用事件适配器来实现:
    this.addWindowListener(new WindowAdapter(){
        public void windowClosing(WindowEvent e){
            this.dispose();
        }
    });
  本意是为当前窗口(实际上为一个对话框)添加关闭窗口事件。但编译器报错说,new WindowAdapter()不存在dispose()方法。我明白过来,this.dispose()中的this不是窗口对象,而是适配器对象。那么怎样调用外部对象即窗口对象呢?既不能用super也没有outer。上网查一下,找到一个方法:在这个复合语句外面加一句:
    final DialogTry2 outer = this;
  然后把this.dispose();改为:
    outer.dispose();
  这样就好了。也看明白了怎么回事。原来this作为当前的对象可以这样调用啊,长见识了。
  改好的程序如下:
    final DialogTry2 outer = this;
    this.addWindowListener(new WindowAdapter(){
        public void windowClosing(WindowEvent e){
            outer.dispose();
        }
    });
  不记得从哪个网页看到的了,那页很复杂,讲了许多问题,我只从其中摘出这一条来。感谢那位网友。


相关文档:

Java的Filter 一:(转载)


 
 
关键字: filter
    过滤器Filter也具有生命周期:init()->doFilter()->destroy(),由部署文件中的filter元素驱动。在servlet2.4中,过滤器同样可以用于请求分派器,但须在web.xml中声明,<dispatcher>INCLUDE或FORWARD或REQUEST或ERROR</dispatcher>该元素位于filter ......

Java编程那些事儿69——抽象类和接口(二)

8.9.2 接口
         接口(Interface)是一种复合数据类型。
         至此,Java语言的所有数据类型介绍完了,下面进行一个简单的总结。Java语言的数据类型分为两大类:基本数据类型和复合数据类型,其中基本数据类型有8种,复合数据类 ......

为什么如此获取Java数组的长度

记得vamcily 曾问我:“为什么获取数组的长度用.length(成员变量的形式),而获取String的长度用.length()(成员方法的形式)?”
我当时一听,觉得问得很有道理。做同样一件事情,为什么采用两种风格迥异的风格呢?况且,Java中的数组其实是完备(full-fledged)的对象,直接暴露成员变量,可能不是一种很OO的风格。 ......

使用JAVA和C#开发Ribbon界面

Ribbon 原来出现在 Microsoft Office 2007 的 Word、Excel 和 Powerpoint 組件中,后来也被运用到 Windows 7 的一些附加组件等其它软件中,如画图和写字板。它是一个收藏了命令按钮和图标的面板。它把命令组织成一组"标签",每一组包含了相关的命令。每一个应用程序都有一个不同的标签组,展示了程序所提供 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号