Information om denne video
Underviser: Jeppe Borgaard Jørgensen Video: 16:36 Lektion nr. 14 af 21
I denne videolektion skal vi arbejde videre med objektorienteret programmering. Vi skal hovedsageligt kigge på init-metoden, som er en måde at klargøre vores objekter på.
Øvelse
Lav et program med 2 klasser (Person & Insurance). En person skal have 3 valgfrie instans-variabler, og Insurance har monthyCost og type.
- Alle instans-variabler skal kunne initialiseres med init-metoden
- En person har en insurance som instans-variabel
- Man skal kunne ændre forsikringen på en person
- Der skal være en udskrift, der viser personinfo + forsikring
*HINT -> Byg med fordel videre på sidste øvelse.
Løsningsforslag til øvelse
//: Playground - noun: a place where people can play import Cocoa class Person { // Instans variabler var name = "Unknown" var age = 0 var eyeColor = "Unknown" var gender = "Unknown" var insurance: Insurance = Insurance(); // Metoder / Funktioner func greeting() { print("Hello, my name is \(self.name) and i am \(self.age) years old. I have \(self.eyeColor) eyes and i am a \(self.gender). My insurance is \(self.insurance.info())") } } class Insurance { var monthlyCost = 0; var type = "None"; init(monthlyCost: Int, type: String) { self.monthlyCost = monthlyCost; self.type = type; } init() { } func info() -> String { return "Insurance of type \(self.type) with a price of \(self.monthlyCost) per month."; } } var myself = Person() myself.name = "Jeppe" myself.age = 25 myself.eyeColor = "Brown" myself.gender = "Male" myself.insurance.monthlyCost = 250 myself.insurance.type = "Indbo" var jamie = Person() jamie.name = "Jamie" jamie.age = 47 jamie.eyeColor = "Blue" jamie.gender = "Female" jamie.insurance = Insurance(monthlyCost: 550, type: "Ulykke") myself.greeting() jamie.greeting()