创建一个 object 的最佳方法,该 object 具有另一个 class 的实例数组作为 cocoa 中的 属性

Best approach to create an object that has an array of instances of another class as a property in cocoa

我的程序中有两个 class,其中一个有另一个 (@property) 的数组。 例如,一个 class 房间有一组学生。 这些方法有什么区别?

  1. 在我 init 第一个 object
  2. 时为数组创建创建一个 instance method
  3. 在第二个 class.h 文件中创建一个 class method,该文件创建包含 instancetype 个实例的数组
  4. 任何其他方法

注意:我不需要单独的第二个 class 的实例,当它们是第一个 class 的属性时它们才有意义。

P.S。我无法为此设置更短的标题。如果你觉得某件事更好,请这样做 :D

With 1) classroom 的所有者,例如学校,必须有学生的引用,以便在实例化 classroom 时它可以传递数组学生到 class 房间。如果您想实例化 class 房间,但还不知道学生是什么,这将是一个问题。但是,如果您知道 class 房间实例化时的所有学生,并且不打算让学生不断变化,那就更好了

With 2) class房间可以先实例化,然后学校可以调用 addStudents 或 class 房间内的任何方法 class-- 随着学校对学生的了解。

另一个解决方案是让您的 class 房间 class 有一个 public NSArray 属性。那么学校可以addObjectremoveObject随时;有效地让您随时完全控制 class 房间的学生