Java编码风格 - 在类中调用方法

时间:2010-03-10 21:57:03

标签: java coding-style

我想在我创建的共享gwt类中调用验证方法来存储验证逻辑(对于用户输入的文本字段)

 suggestBox.addKeyUpHandler( new KeyUpHandler() {
            public void onKeyUp(KeyUpEvent event) {
                if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { 
                    String boxText = suggestBox.getText();
                    if (new FieldVerifier().validUserName(boxText)) { //inner class used to instanciate the FieldVerifier class where validUserName(String ..) lives

现在我可以使用正确实例化的FieldVerifier类(而不是上面的内部类)来实现这一点 - 或者实际上,也许可以使它成为抽象的。但我怀疑我错过了什么(即必须是一种优雅的方式)。

看了谷歌代码搜索,但没有遇到任何特别有用的东西..

4 个答案:

答案 0 :(得分:1)

我不确定我是否得到了它,但请尝试:

FieldVerifier.this.validUserName(boxText);

答案 1 :(得分:0)

  

我可以使用正确实例化的FieldVerifier类(而不是上面的内部类)来做到这一点

您对FieldVerifier的使用不是内部类。它确实“适当地实现了”。 KeyUpHandler是一个匿名的内联类的例子。

答案 2 :(得分:0)

如果您将validUserName()方法设为FieldVerifier静态,则可以直接调用FieldVerifier.validUerName(),而无需实例化FieldVerifier对象。但是,如果它是一个相当小的类,那么创建一个新对象的开销可能很小。

答案 3 :(得分:0)

如果我理解你要做什么,我会将validUserName()作为静态方法。它似乎不需要或改变任何状态;你只需传入一些内容,在其上运行一些验证逻辑,然后返回一个布尔值。这种情况是你想开始使用静态的。