2 回答

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個贊
由于您的抽象類沒有任何狀態(tài),您可以將其轉(zhuǎn)換為 Trait(接口),在 Scala 中,您可以使用如下方法定義接口
trait Equipment{
var numberOwned = 0
var name: String = ""
def goldPerSecond(): Double = {
numberOwned
}
}
class TestEquipment extends FunSuite with Equipment {
this.numberOwned = 0
test("first test"){
}
}
您可以使用 FunSuite 擴(kuò)展您的 TestEquipment 并實(shí)現(xiàn)接口 Equipment。
如評論中所述,您不能同時從 FunSuite 和 BaseClass 繼承。

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個贊
它不取決于它是否在測試中:您需要一個Equipment.
class TestEquipment extends FunSuite {
val equipment: Equipment = ...
equipment.numberOwned = 0
test("first test"){ ... }
}
在 Scala 中,您可以直接執(zhí)行import equipment._和引用numberOwned,但這不會改變含義。
這個實(shí)例可以是this,就像 skjagini 的回答一樣,但它在語義上沒有多大意義:你的測試套件是一種設(shè)備嗎?
添加回答
舉報(bào)