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()

