У меня есть два интерфейса с одним и тем же методом подписи, но тип возвращаемого значения отличается. Интерфейсы выглядят так, как показано ниже:
interface IIntCalculation {
fun Add(a:Int, b:Int): Int
}
interface IDoubleCalculation {
fun Add(a:Int, b:Int): Double
}
Когда я пытаюсь реализовать эти интерфейсы, очевидно, что он будет конфликтовать как одна и та же сигнатура и отображает ошибку как Конфликтующие перегрузки: public open fun Добавить (a:Int, b: Int): Int определено в test.Calculation, public open fun Добавить (a: Int, b: Int): Double определено в test.Calculation. Пример кода, как показано ниже,
class Calculation : IIntCalculation, IDoubleCalculation {
override fun Add(a: Int, b: Int): Int {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
override fun Add(a: Int, b: Int): Double {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
}
Итак, могу ли я реализовать эти интерфейсы как явно ?
Заранее благодарен за любые виды помощи и предложения.