Which of these are correct implementations of the given interface?
interface Animal {
val numberOfLimbs: Int
fun move()
fun communicate()
}
-
fun run() {} fun sayMeow() {} class Cat : Animal { override val numberOfLimbs: Int = 4 override fun move() { run() } override fun communicate() { sayMeow() } } -
class Dog : Animal { override val numberOfLimbs: Int = 4 override fun move() { run() } } -
fun howl(){} class Wolf : Animal { override fun move() { run() } override fun communicate() { howl() } } -
fun catchPrey(){} class Bear : Animal { override val numberOfLimbs: Int = 4 override fun move() { run() } override fun communicate() { howl() } override fun eat() { catchPrey() } } -
fun burrow(){} class Fox : Animal { override val numberOfLimbs: Int = 4 override fun move() { run() } override fun communicate() { howl() } fun digShelter() { burrow() } }