我有两个对象,ObjectA 和 ObjectB,它们都有一个方法 update()。我想编写一个接受 ObjectA 或 ObjectB (但不接受其他类型)的函数。从概念上讲,这就是我想要做的:
def doSomething[T <: ObjectA | T <: ObjectB](obj: T) = {
obj.update
}
我意识到还有其他方法可以解决这个问题(例如,update() 方法的结构类型、公共基类等),但我的问题是在 Scala 中可以这样做,如果可以,语法是什么?这叫什么?