我有一个学生类,它必须有一个字符串 ID 的属性,必须对其进行验证。我不确定是在学生类(class)还是我在其中实现学生类(class)的类(class)中验证它。这有意义吗?
最佳答案
假设 ID 是最终的且不可变的,那么一种方法是让 Student 构造函数抛出异常,可能是 new IllegalArgumentException("Invalid student ID");
您可以在 Student 类中额外提供静态方法,以验证字符串是否有效,以防您需要在不创建 Student 对象的情况下检查它。
但是我认为判断ID是否有效的逻辑应该在Student类中。
如果存在(或将来可能存在)不同类型的学生 ID,您也可以考虑抽象工厂模式,但听起来有点矫枉过正。
关于java - 在哪里验证字符串参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13111323/