10
我们应该避免将自定义对象作为参数吗?
假设我有一个自定义对象Student: public class Student{ public int _id; public String name; public int age; public float score; } 还有一个窗口Window,用于显示学生的信息: public class Window{ public void showInfo(Student student); } 它看起来很正常,但是我发现Window很难单独测试,因为它需要一个真正的Student对象来调用该函数。因此,我尝试修改showInfo,使其不直接接受Student对象: public void showInfo(int _id, String name, int age, float score); 以便更轻松地单独测试Window: showInfo(123, "abc", 45, 6.7); 但是我发现修改后的版本还有另一个问题: 修改学生(例如:添加新属性)需要修改showInfo的方法签名 如果Student具有许多属性,则Student的方法签名将非常长。 因此,使用自定义对象作为参数或接受对象中的每个属性作为参数,哪个更可维护?