<< Meny
Övningar Flash
Ankapplikation med Strategymönstret
Använd Flash och Actionscript för att lösa dessa uppgifter.
- Utgå från flashfilen i uppgift 3 bland förra lektionens övningar och skapa en Flashfil anka.fla som kallar på en mainmetod i klassen AnkProgram.as. Döp filerna enligt tabellen nedan. Låt mainmetoden instantiera en Anka. Gör så att konstruktorn i klassen Anka skriver ut "Anka skapad" i meddelandefönstret.
| anka.fla |
/source |
| AnkProgram.as |
/source/ankor |
| Anka.as |
/source/ankor |
- Utveckla applikationen genom att:
-
Skapa en klass för en speciell sorts änder, Skedand.as.
-
Låt Skedand ärva Anka.
-
Ändra i AnkProgram så att mainmetoden i stället instantierar en Skedand.
- Skapa ett interface i en fil KvackBeteende.as och en klass som heter Dubbelkvack i en annan fil .
-
Definiera en metod kvacka() i detta interface.
- Låt Dubbelkvack implementera interfacet KvackBeteende
- Skapa en metod kvacka() i Dubbelkvack. Låt metoden innehålla kommandot trace("Kvack kvack!").
- Kontrollera att koden inte innehåller syntaxfel - i övrigt kan du avvakta med test av funktionalitet till nästa uppgift.
| Dubbelkvack.as |
/source/ankor |
| KvackBeteende.as |
/source/ankor |
- Nästa steg är att koppla dubbelkvackandet till skedanden. Testa följande tillvägagångssätt:
- Definiera en global variabel av typen KvackBeteende i klassen Anka. Låt variabeln förslagsvis heta kvacktyp.
- Definiera en metod doKvack() i Anka. I metoden utför du en kvackning med genom att kalla på kvacktyp.kvacka().
- Gå till skedandens konstruktor och Instantiera ett KvackBeteende och lägg i variabeln kvacktyp. (kvacktyp = new Dubbelkvack()).
- Testa genom genom attha med följande kod i ankprogrammets mainmetod:
var ankan:SkedAnd = new SkedAnd();
ankan.utforKvack();
- Skapa nu ytterligare kvackmetoder enligt tabellen nedan. Ändra skedandens kvackande dynamiskt i main-metoden med kommandot:
ankan.kvackMetod = new ankor.Fuiit();
| Kvack.as |
/source/ankor |
| Fuiit.as |
/source/ankor |
| IngetKvack |
/source/ankor |
- Skapa ett interface för flygBeteende på motsvarande sätt som du gjort med kvackandet. Hitta på lämpliga tracetexter. Testa interfacet.
| FlygBetende.as |
/source/ankor |
| Flyg.as |
/source/ankor |
| KanInteFlyga.as |
/source/ankor |
- Skapa ytterligare ankor. Ge dem beteenden och testa.
| Mandarinand.as |
/source/ankor |
| Plastanka.as |
/source/ankor |
| Bondanka.as |
/source/ankor |