Swift Protocol Extensions overriding
问题 I'm experimenting with Swift protocol extensions and I found this quite confusing behaviour. Could you help me how to get the result I want? See the comments on the last 4 lines of the code. (You can copy paste it to Xcode7 playground if you want). Thank you!! //: Playground - noun: a place where people can play import UIKit protocol Color { } extension Color { var color : String { return "Default color" } } protocol RedColor: Color { } extension RedColor { var color : String { return "Red