ActionScript 3.0 Design Patterns

(Chris Devlin) #1

54 | Chapter 1: Object-Oriented Programming, Design Patterns, and ActionScript 3.0


public function Mp3( )
{
//Inherits composition references from superclass
playMedia = new PlayAudio( );
recordMedia = new RecordAudio( );
}
}
}


Example 1-48. PlayMedia.as


package
{
//Interface for playing media
interface PlayMedia
{
function playNow( ):void;
}
}


Example 1-49. PlayVideo.as


package
{
//Concrete PlayMedia: Video
class PlayVideo implements PlayMedia
{
public function playNow( ):void
{
trace("Playing my video. Look at that!");
}
}
}


Example 1-50. PlayAudio.as


package
{
//Concrete PlayMedia: Audio
class PlayAudio implements PlayMedia
{
public function playNow( ):void
{
trace("My MP3 is cranking out great music!");
}
}
}


Example 1-47. Mp3.as (continued)

Free download pdf