【Swift 60秒】75 - Overriding methods

0x00 Lesson

Child classes can replace parent methods with their own implementations - a process known as overriding. Here’s a trivial Dog class with a makeNoise() method:

class Dog {
	func makeNoise() {
		print("Woof!")
	}
}

If we create a new Poodle class that inherits from Dog, it will inherit the makeNoise() method. So, this will print “Woof!”.

class Poodle: Dog {}
let poppy = Poodle()
poppy.makeNoise()

Method overriding allows us to change the implementation of makeNoise() for the Poodle class.

Swift requires us to use override func rather than just func when overriding a method - it stops you from overriding a method by accident, and you’ll get an error if you try to override something that doesn’t exist on the parent class:

class Poodle: Dog {
	override func makeNoise() {
		print("Yip!")
	}
}

With that change, poppy.makeNoise() will print “Yip!” rather than “Woof!”.


0x01 我的小作品

欢迎体验我的作品之一:小笔记-XNote
笔记一步到位!
App Store 搜索即可~


猜你喜欢

转载自blog.csdn.net/xjh093/article/details/128543643
今日推荐