1

我正在玩 Flex,我对一些事情感到好奇。

首先,对于我的实例变量,我可以定义类似

private var _count:int = 0;

然后似乎如果我有一个 getter 和 setter 用于计数,例如

        public function get count():int
    {
        return _count;
    }

    public function set count(value:int):void
    {
        _count = count;
    }

我可以从另一个函数中调用类似

count++;

这反过来又将 _count 设置为增加一。

IE 我似乎可以通过 count 或 _count 访问 count 因为我有一个 getter 和 setter ..

那是正确的理解吗?

对于像上面这样的事情,拥有 getter 和 setter 或简单地调用是很好的 OOP 实践_count++;

谢谢

4

1 回答 1

1

我会指出,您的 set count 方法会更改变量 _points。如果这是一个错字,那么:

是的; 这是正确的理解。听起来您的测试已经证明了这一点。

引用您的类的实例的其他类将无法访问私有 var _count;但公众“计数”将是。

Getter 和 Setter 对于在类中执行其他功能很有用。在 Flex UI 组件的上下文中,您可以分派一个事件,或通过 Flex 组件失效方法之一使组件失效。

分离 get 和 set 方法还允许您创建只读属性或只写属性,只需省略相应的 get 或 set 方法。

如果这不是错字;然后我不知道为什么 count++ 会改变 _count 变量;你还没有向我们展示的计数正在发生其他事情。

于 2013-04-16T16:39:14.053 回答