Access modifiers control who (in terms of classes and code) can access what. There are several levels of access modifiers represented by the following keywords:
In AS 3:
- internal (default) - Can be accessed from within the same package.
- private - Can only be accessed by the class that defines it.
- public - Can be accessed any where.
- protected - Can be accessed in the class that defines and any class that extends that class.
Click here for a more detailed explanation of these from Adobe's site (look for the Encapsulation heading).
In AS 2 basically the same ones existed, but they were not really enforced all that well and the default is to public.
I am not going to explain everything about access modifiers here. What I want to get across is the idea that a class that extends another class has access based upon the access modifers in the class that it is extending. So lets look at this a bit more.
If in class Father we set the modifier to:
private var _surName:String = "Smith" then trace(kid._surName) would result in the following error (AS 3): The member is private and cannot be accessed.
Any of the other access modifiers (making the assumption Father and Son are in the same package) would allows us to do what we did.
|» Level Intermediate|
Rating: 9 Votes: 5
|Kortex (aka Jeremy Wischusen) is a Flash/PHP developer for myyearbook.com and the lead software architect for the DigitallyU Digital Portfolio Software Suite.|
|Download the files used in this tutorial.|
|Download (7 kb)|
|More help? Search our boards for quick answers!|