我可能想得太多了,但我编写了一个程序,可以对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对象的所有验证代码?或者这两种方法都是有效的?如果我需要澄清这个问题,请告诉我。提前谢谢。
1条答案
按热度按时间mmvthczy1#
这是一个风格问题。这可能取决于你,或者你的公司,甚至你在未来工作的公司-我已经有一些公司坚持一些奇怪的代码之前,我去它赚钱哈哈
我会避免在employee对象中使用它,因为它不是对象行为的一部分