Arv og subklasser
Kjære IN1010-student,
Denne uken har du blitt introdusert for arv, som er en av de definerende egenskapene ved objektorientert programmering. Dette er et større tema, som skal dekkes nøye de neste ukene.
Obligatorisk innlevering 1
Den obligatoriske innleveringen skal leveres på onsdag til uken. Vi håper du har god kontroll på den, og at den har vært med på å gi en fin overgang fra Python til Java. Dersom du allerede er ferdig med innleveringen kan du gjerne levere og skrive «Klar for retting», så øker du sjansen for at den blir rettet tidlig.
To bemerkninger om den obligatoriske oppgaven:
- Vi oppdaget at en metode var gitt navnet
settDødi oppgaveteksten, og gitt navnetsettDoedi en testfil. Testfilen er oppdatert. - Testfilene forutsetter at programmet har en del metoder definert, siden de refereres til fra testmetodene. Dette kan løses ved å opprette tomme metoder, eller ved å kommentere ut relevante testmetoder. Relevante Discourse tråder:
Innlevering 2
Innlevering 2 er nå publisert på innleveringssiden! Den handler naturligvis om klasser og subklasser.
En liten nøtt
Dersom du er ferdig med den obligatoriske oppgaven, men ikke føler deg ferdig med Game of Life, så har vi laget en liten nøtt til deg. Dette er en tilstand av Game of Life, og neste generasjon staver ut et ord:
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| . | O | . | . | . | . | O | . | O | . | O | O | O | O | O | O | O | O | O | . | O | . | . | . | . | . | O | O | . | O |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| O | . | . | O | O | . | . | . | . | O | O | O | . | O | O | . | O | O | O | O | . | . | . | . | O | . | . | . | . | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| . | . | . | O | . | . | . | O | O | . | . | . | . | . | . | . | O | . | O | . | . | . | . | . | O | . | O | O | O | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| O | . | O | O | . | O | . | . | O | . | . | O | . | . | O | O | . | . | O | . | O | O | . | . | O | . | O | . | O | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| . | O | . | O | O | . | . | O | O | . | . | O | O | O | O | . | O | . | . | . | O | O | O | . | O | . | O | . | . | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| . | . | O | O | . | . | . | O | O | . | . | . | O | . | . | . | . | O | O | . | . | . | . | O | . | . | . | . | . | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| . | . | . | . | . | . | . | . | . | . | . | . | . | O | . | . | . | . | . | . | O | O | . | . | . | O | O | . | . | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
Ordet som staves ut i etter én generasjon er løsningen på nøtten. Siden dette er en nøtt som i høyeste grad er frivillig legger vi ingen føringer på hvordan du kommer frem til svaret.
Ukas ord
Ukas ord var kompilator! En kompilator er et program som kan lese et program i ett språk – kildespråket (eng. the source language) – og oversette det til et ekvivalent program i et annet språk – målspråket (eng. the target language). En kompilator vil (blant annet) identifisere og rapportere om feil i kildekoden, og optimere den – slik at den i neste omgang kan eksekveres mer effektivt. Java sin kompilator, javac, oversetter Java-kode til bytekode – noe som resulterer i .class-filer. Disse kjøres deretter på Java Virtual Machine (JVM), som bearbeider bytekoden gjennom en kombinasjon av (ytterligere) kompilering og tolking (eng. interpretaion).
Til uken
Vi håper du nå er godt i gang med IN1010!
Vi ses på forelesning, fellesøvelse, gruppetimer, repetisjonstime og fredagsjava til uken!
___
Med vennlig hilsen oss som underviser IN1010