ActionScript 3.0 also allows you to define interfaces. Interfaces allow you to separate the interface from the implementation, which enables greater application flexibility.
Much of what you learned about declaring classes applies to declaring interfaces as well. In fact, it’s easier to list the differences:
Interfaces use the
interface
keyword rather than theclass
keyword.Interfaces cannot declare properties.
Interface methods declare the method signature but not the implementation.
Interfaces declare only the
public
interface for implementing classes, and therefore method signature declarations do not allow for modifiers.
By convention, interface names start with an uppercase I
. The following is an example of an
interface:
package com.example { public interface IExample { function a():String; function b(one:String, two:uint):void; function get example():String; function set example(value:String):void; } }
In the preceding example, interface
says that any implementing class must
declare methods a()
and b()
using the specified signatures.
You can declare a class so that it implements an interface using the implements
keyword, following the class name or following the superclass name if
the class extends a superclass. The following example implements IExample
:
package com.example { import com.example.IExample; public class Example implements IExample { private var _example:String; public function get example():String { return _example; } public function set example(value:String):void { _example = value; } public function Example() { } public function a():String { return "a"; } public function b(one:String, two:uint):void { trace(one + " " + two); } } }
When a class implements an interface, the compiler verifies that it
implements all the required methods. If it doesn’t, the compiler throws an error. A class can
implement methods beyond those specified by an interface, but it must
always implement at least those methods. A class can also implement more
than one interface with a comma-delimited list of interfaces following the
implements
keyword.
Get Programming Flex 3 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.