Search Tutorials
As Simple as it GetsSo this is about as simple of an example as I can write. Lets take a look a at two classes. class Father{ public var _surName:String = "Smith" } class Son extends Father{ } Now lets say we did something like this in a frame in a movie (feel free to try this). var kid:Son = new Son(); trace(kid._surName); This would output "Smith" Take note of the following:
So why if Son has no code in does trace (kid._surName) output "Smith"? Because the value of the instance variable _surName in inherited from the Father class due to the use of the keyword extends in the class definition in class Son. The extends keyword tell the compiler that class Son inherits from class Father. Both methods and variables can be inherited ,so the following would also work (again note public keyword): class Father{ public var _surName:String = "Smith" //note that in AS 2 void is lowercase, but in AS 3 uppercase trace("My last name is " + this._surName); } } class Son extends Father{ } var kid:Son = new Son(); kid.saySurName(); Would output "My last name is Smith" So does this means that a class that extends another class gets all of the code from the class is extends (also known as the parent class)? Well not exactly. Here is where we get back to the public key word (that I have been so subtlety pointing out) in class Father.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|