假设我有一个对象ClassRoom,在ClassRoom中有许多学生对象(50个对象)具有超过20个属性,许多教师对象(10个对象)具有超过20个属性。ClassRoom还具有其他一些属性,如classNo、seatCapacity等。
将ClassRoom对象的对象作为参数传递给方法好吗?假设我只需要3-4个ClassRoom属性,每个学生需要1-2个属性。如果是坏的,那么传递一个重物的成本是多少?
发布于 2015-07-30 16:31:57
在Java语言中,传递给的是对对象的引用。当您传递一个String实例或一个复杂的类实例时,比如您的ClassRoom类,没有成本上的差异。
发布于 2015-07-30 17:28:43
堆内存中没有difference.The对象,您只是在堆栈内存中使用对对象的引用。
发布于 2015-07-30 16:34:00
忘了内存吧,那是微不足道的。答案是依赖于。只需基于您的业务逻辑传递,而不是考虑内存,是的,JVM处理得更好。
如果您不希望其他方法修改您的对象的字段,那么不要传递该对象。只需传递所需的属性。如果不是,那么最好传递对象引用并使用其中的值,而不是在方法签名中添加那么多参数。
https://stackoverflow.com/questions/31718749
复制相似问题