私がこれまでに見つけた答えはおそらくNOですが、この機能の将来のサポートの計画はあるのでしょうか。これがSwiftでの様子です。
プロトコル構成の形式は、SomeProtocolおよびAnotherProtocolです。アンパサンド(&)で区切って、必要な数のプロトコルをリストできます。プロトコルのリストに加えて、プロトコル構成には1つのクラスタイプを含めることもできます。これを使用して、必要なスーパークラスを指定できます。
protocol Named
{
var name: String { get }
}
protocol Aged
{
var age: Int { get }
}
func wishHappyBirthday(to celebrator: Named & Aged)
{
print("Happy birthday, \(celebrator.name), you're \(celebrator.age)!")
}
Kotlinで交差型を明示的に定義することはできませんが、ジェネリック型制約を使用して関数パラメーターで交差型を実現できます。このような:
interface Named {
val name: String
}
interface Aged {
val age: Int
}
fun <T> wishHappyBirthday(celebrator: T) where T : Named, T : Aged {
println("Happy birthday, ${celebrator.name}, you're ${celebrator.age}!")
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加