actionscript-3 - 为什么不总是使用公共(public)函数和变量?

标签 actionscript-3 flash actionscript

我正在使用 actionscript 3 编写一个 flash 游戏。在我的一个 MovieClip 类中,我通过编写一些函数和变量开始编码。所以我们都知道私有(private)函数和变量不能在 MovieClip 之外访问,而公共(public)函数和变量可以。

那么我的问题来了:为什么我们不只是总是使用公共(public)函数?它会导致延迟问题吗?它是否会返回一个特定的值使其公开,从而让玩家做更多的工作?

此外,如果您不是在类中编写代码并放置框架代码,那么函数始终是公共(public)的。为什么是这样?在我的第一个问题的答案中,无论出于何种原因,为什么不让私有(private)函数和变量也出现在框架操作中?

最佳答案

如果你愿意,你可以使用 all public。

假设您的代码是麦当劳,而您是经理。您将客户需要的东西公开,例如 table 、椅子和免费加装苏打水的机器。但是,有些东西是客户不需要访问的,而您将这些东西放在一个私有(private) 区域,并用仅限员工 门将其锁住。您不希望没有知识或需要在您的厨房里的人可能会搞砸。

只公开需要公开的内容是一种很好的做法,这样可以减少其内部工作被破坏的可能性。当您使用大型代码库和团队一起工作时,这一点更为重要。如果它是你所有的代码,而且你是唯一一个会看到它的人,那么它可能不会那么重要。然而,使用 public/private 来公开/限制属性/方法可以让您的生活更轻松,因为在使用该类的实例时它不会那么困惑。

关于actionscript-3 - 为什么不总是使用公共(public)函数和变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16257481/

相关文章:

actionscript-3 - 在 AS3 中,当使用 NetStream 进行视频播放时,当我使用appendBytes 时如何查找

actionscript-3 - 在点击处理程序中访问 .name 属性

actionscript-3 - 如何删除数组的最后一项?

actionscript-3 - 检查歌曲是否在AS3中缓冲

string - AS3 - "\u2605"与 "\\u"+"2605"不一样?

actionscript-3 - AS3从子类访问父类的变量

flash - Nodejs socket.io 和 flash 示例

actionscript-3 - 将 Adob​​e Air 打包为 Exe

flash - 对ActionScript 2实现Google Analytics(分析)跟踪的最佳方法是什么?

php - 应采用什么设计来保存文件信息