actionscript-3 - 使用属性而不是公共(public)变量有什么优势吗?

标签 actionscript-3 properties field accessor

这可能是一个非常愚蠢的问题,但我还是不得不问。我大约一个月就要毕业了,在学习期间,我一直被教导使用属性而不是公共(public)变量。

所以我开始想知道优势是什么,我必须说,在某些情况下,我根本不知道。当然,当设置属性或获取属性时需要执行一些其他逻辑时它很方便,但是当您仅获取/设置变量时使用属性有什么优势吗?我的意思的示例如下所示 (As3)。

private var _myVariable:SomeClass;

public function get myVariable():SomeClass{
    return _myVariable;
}

public function set myVariable(value:SomeClass):void{
    _myVariable = value;
}

因此,重复并澄清我的问题:像这样对我的 getter/setter 进行编程是否有任何优势,或者我是否可以将变量更改为 public 并删除 getter/setter?

最佳答案

如果您只使用公共(public) getter 和公共(public) setter 包装对私有(private)变量的访问,而不需要进一步设置或获取变量,那么您可以使用公共(public)属性。

如果您以后想从您的类继承,您应该考虑使用 getter 和 setter,并且可能能够以您目前没有考虑过的其他方式扩展它。

关于actionscript-3 - 使用属性而不是公共(public)变量有什么优势吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6340915/

相关文章:

android - 使用 AIR 和 AS3 在 Android 上启动 VLC

c# - 从未知对象访问属性/变量

asp.net - 如何将值设置为来自 asp.net 的 Html 隐藏字段

actionscript-3 - Flash CS5中的事件发生后,交叉淡入淡出的声音

actionscript-3 - AS3 播放音频之间不必要的延迟

flash - AS3 : How can I define boundaries for a drag-able object?

java - 遍历属性文件中的 SOAP 请求

c# - 如何使属性真正只读?

elasticsearch - Kibana 上未分析的字段

field - 关于odoo的相关领域?