Java,将参数从一个类传递到另一个类

时间:2013-04-03 15:12:20

标签: java class parameters

我想将所有验证方法(电话号码验证,数字验证)保存在一个单独的类中,让其他类通常访问验证方法。我该怎么办?请有人帮助我。

class Validation {

  public static boolean validateQty(String txt) {

        String regx = "^0([1-9]){2}([0-9]){7}$";
        Pattern compile = Pattern.compile(regx, Pattern.CASE_INSENSITIVE);
        Matcher matcher = compile.matcher(txt);
        return matcher.find();
  }

  public static boolean validateLetters(String txt) {

        String regx = "[a-zA-Z]+\\.?";
        Pattern pattern = Pattern.compile(regx, Pattern.CASE_INSENSITIVE);
        Matcher matcher = pattern.matcher(txt);
        return matcher.find();
  }

}

class ItemDetails {

  private void addItem() {
        boolean b = validateLetters(txtItemName.getText()); // I want to pass txtItemName value to Class Validation's validateLetters()
        boolean c = validateQty(txtQty.getText());
  }

}

3 个答案:

答案 0 :(得分:2)

由于这些是静态方法,您可以通过为类名添加前缀来调用它们:

    boolean b = Validation.validateLetters(txtItemName.getText()); 
    boolean c = Validation.validateQty(txtQty.getText());

您可能还发现将整个项目传递给单个validate()方法很有用。

答案 1 :(得分:1)

由于这些是静态方法,您可以像这样访问

boolean b = Validation .validateLetters(txtItemName.getText()); 
        boolean c = Validation .validateQty(txtQty.getText());

或创建验证对象

Validation v=new Validation ();

boolean b = v .validateLetters(txtItemName.getText()); 
        boolean c =v .validateQty(txtQty.getText());

答案 2 :(得分:1)

boolean b = Validation .validateLetters(txtItemName.getText()); 
boolean c = Validation .validateQty(txtQty.getText());

由于验证类方法validateLetters和validateQty中的方法是静态的,因此可以这样调用它。否则,您必须首先创建验证实例。像

Validation v = new Validation();
boolean b = v.validateLetters(txtItemName.getText());
boolean c = v.validateQty(txtQty.getText());