java—在对象的输入上放置验证检查

vsaztqbk  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(359)

我可能想得太多了,但我编写了一个程序,可以对employee对象的示例执行以下操作:

Check if the input for an employeeID follows the format DDD-L where 

D is a digit 0-9, 
- is a hyphen between digits and the letter.
L is an alphanumeric A-L.

目前,我编写的方法是:为employee对象的示例调用一个无参数构造函数,然后要求用户输入字符串。
在我得到他们的输入后,我调用make while循环来运行employee示例中的一个方法:

while(employee.isValidInput(input,keyboard) == false){
        System.out.println(employee.printError());

        input = keyboard.nextLine();
        employee.setEmployeeNumber(input);
    }
    System.out.println("Input valid.");

用于验证的public和private方法存在于employee对象上,而不是位于我所指的单独对象中的验证。
tldr是,我的对象本身应该执行这样的验证,还是应该将其传递给某种inputvalidation对象,该对象包含我写入employee对象的所有验证代码?或者这两种方法都是有效的?如果我需要澄清这个问题,请告诉我。提前谢谢。

mmvthczy

mmvthczy1#

这是一个风格问题。这可能取决于你,或者你的公司,甚至你在未来工作的公司-我已经有一些公司坚持一些奇怪的代码之前,我去它赚钱哈哈
我会避免在employee对象中使用它,因为它不是对象行为的一部分

相关问题