子类化您自己的类之一或使用相同的父类?

Posted

技术标签:

【中文标题】子类化您自己的类之一或使用相同的父类?【英文标题】:Subclassing one of your own classes or using the same parent class? 【发布时间】:2011-10-16 19:56:28 【问题描述】:

在我的应用程序中,我有一个 mainViewController,它有一堆字母平铺 UIImageViews。您可以在此 mainViewController 上平移字母以拼出单词。

我也有包含字母图块的弹出视图控制器,您可以将它们拖到 mainViewController 上。一旦将字母拼贴放到 mainViewController 上,它们就需要访问与字母拼贴所做的所有相同的方法,这些方法已经存在于 mainViewController 上。

目前,我分别在 mainViewController 和弹出视图控制器中创建字母图块。 mainViewController 和 popover viewcontroller 的父类都是 UIViewController。

我想知道在我的情况下,我是否应该在 mainViewController 类中声明弹出视图控制器中包含的所有字母图块,然后让弹出视图控制器成为 mainViewController 的子类?

如果我应该改变它,你能告诉我为什么它会更好吗?

谢谢!

【问题讨论】:

【参考方案1】:

Objective-C 以更喜欢委托而不是子类化而闻名。

我宁愿使用一个知道所有图块及其方法的数据源类,并在两个控制器中使用它。

【讨论】:

谢谢。我一定会调查的。

以上是关于子类化您自己的类之一或使用相同的父类?的主要内容,如果未能解决你的问题,请参考以下文章

父类子类指针相互转换问题

Java 面向对象

Python入门精华-OOP调用父类的方法及MRO方法解析序列

java面向对象

java基础--多态

java多台