Checkpoint 7 - Using Classes
class Animal {
var legs:Int
init(legs:Int) {
self.legs = legs
}
}
class Dog: Animal {
func dogspeak() {
print("Woof!")
}
}
class Cat: Animal {
var isTame: Bool
init(legs: Int, isTame: Bool) {
self.isTame = isTame
super.init(legs: legs)
}
func catspeak() {
print("Meow")
}
}
class Corgi: Dog {
override func dogspeak() {
print("Bow-wow")
}
}
class Poodle: Dog {
override func dogspeak() {
print("Arf, arf")
}
}
class Persian: Cat {
override func catspeak() {
print("Purr")
}
}
class Lion: Cat {
override func catspeak() {
print("Growl")
}
}
let first = Persian(legs: 4, isTame: true)
first.catspeak()
let second = Lion(legs: 4, isTame: false)
second.catspeak()
let third = Corgi(legs: 4)
third.dogspeak()
let fourth = Poodle(legs: 4)
fourth.dogspeak()
No comments:
Post a Comment