Nux*_*Nux 1 apache-flex actionscript-3 flash-builder
我用私人制定者和公共吸气者做了一个测试课.原始的setter设置了更多的值,但为了简单起见我最小化了代码.
package Lib
{
public class Test
{
private var _data:String;
private var _isLoggedIn:Boolean;
// isLoggedIn getter and setter
public function get isLoggedIn():Boolean
{
return (_isLoggedIn == true && _data != null);
}
private function set isLoggedIn(value:Boolean):void
{
_isLoggedIn = value;
}
private function isLoggedInSet(value:Boolean):void
{
_isLoggedIn = value;
}
// constructor
public function Test()
{
isLoggedIn = false;
isLoggedInSet (false);
}
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,它编译得很好,我认为它按预期工作.但是,当我尝试在我的主mxml中使用它时:
import Lib.Test;
protected function fubar():void
{
var test:Test = new Test();
}
Run Code Online (Sandbox Code Playgroud)
我在Test.as中得到了这个错误(原文如此!):
Multiple markers at this line:
-1178: Attempted access of inaccessible property isLoggedIn through a reference with static type Lib:Test.
-1059: Property is read-only.
-isLoggedIn
Run Code Online (Sandbox Code Playgroud)
请注意,isLoggedInSet (false);工作正常.这是一个错误还是一个功能?感觉就像一个虫子......或者我做错了什么?
编辑:这感觉更加错误,但它的工作原理:
private function get isLoggedIn():Boolean
{
return (_isLoggedIn == true && _data != null);
}
public function get isLoggedInPublic():Boolean
{
return isLoggedIn;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
477 次 |
| 最近记录: |