Skip to content

Instantly share code, notes, and snippets.

@shabib87
Last active February 5, 2017 17:46
Show Gist options
  • Save shabib87/3a382c70038353857d0003d8cb611366 to your computer and use it in GitHub Desktop.
Save shabib87/3a382c70038353857d0003d8cb611366 to your computer and use it in GitHub Desktop.
protocol RoadDrivable {
func driveOnRoad()
}
protocol WaterDrivable {
func driveOnWater()
}
protocol Flyable {
func flyOnAir()
}
class SmartVehicle {
func talk() {
print("Hi! I am the smart talking vehicle!")
}
}
class SmartCar: SmartVehicle, RoadDrivable {
func driveOnRoad() {
print("Vroom!")
}
}
class SmartBoat: SmartVehicle, WaterDrivable {
func driveOnWater() {
print("I can run over water, because I can! B-)")
}
}
class SmartPlane: SmartVehicle, Flyable {
func flyOnAir() {
print("Wohoo! I am flying high!")
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment