接口Apple:
package com.init.demo.`interface` interface Apple{ fun printSelf() fun give() = println("give you an Apple ") }
接口Banana:
package com.init.demo.`interface` interface Banana{ fun printSelf() = println("banana") fun give() = println("give you a banana ") }
两个接口的实现类:
package com.init.demo.interfaceimpl import com.init.demo.`interface`.Apple import com.init.demo.`interface`.Banana /** * 对于两个接口内,名称、参数都相同的的方法 * 并且在实现类中对他们进行不同实现 * 具体实现: * super<接口或超类的名称>.方法 * 在子类或实现类中,直接用super<接口或超类的名称>.方法直接访问 * 超类或借口(如果只有一个继承类或接口,直接写super就好,不需要在后面跟超类或接口的名称) */ class AppleBanana :Banana,Apple{ override fun give() { // TODO("not implemented") //To change body of created functions use File | Settings | File Templates. super<Apple>.give() super<Banana>.give() } override fun printSelf() = println("Banana,Apple") } fun main(args: Array<String>) { val appleBanana = AppleBanana() println(appleBanana.printSelf()) println(appleBanana.give()) }