【发布时间】:2021-07-18 16:56:12
【问题描述】:
我可能想多了,但是我已经编写了一个程序,它将为 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 对象的实例调用一个无参数构造函数,然后我要求用户输入字符串输入。
在我得到他们的输入后,我调用了一个 while 循环,针对我的 Employee 实例中的一个方法运行:
while(employee.isValidInput(input,keyboard) == false){
System.out.println(employee.printError());
input = keyboard.nextLine();
employee.setEmployeeNumber(input);
}
System.out.println("Input valid.");
用于验证的公共和私有方法存在于 Employee 对象中,而不是在我所指的它自己的单独对象中进行验证。
TLDR 是,我的对象本身应该执行这样的验证,还是应该将其传递给某种 inputValidation 对象,该对象包含我已写入员工对象的所有验证代码?或者这是任何一种方法都有效的事情之一?如果我需要清理这个问题,请告诉我。提前致谢。
【问题讨论】:
标签: java validation input