第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 Kotlin mockito 測試代碼復制到 Java

將 Kotlin mockito 測試代碼復制到 Java

UYOU 2023-06-14 10:32:24
試圖將 kotlin 測試代碼復制到 Java??紤]以下現有 kotlin 代碼的類和測試類。open class ClassX(        val a: ObjectA,        val b: ObjectB,        val c: ObjectC) {  fun someMethod() {.....  }}這是測試之一class ClassXTest : ClassX(        a = mock(),        b = mock(),        c = mock())試圖在 java 中模仿相同的代碼public class ClassX {private ObjectA a;private ObjectB b;private ObjectC c;public ClassX(ObjectA a, ObjectB b, ObjectC c) { this.a = a; this.b = b; this.c = c;}public void someMethod() {...}}對于測試類public class ClassXTest extends ClassX{ public ClassX(ObjectA a, ObjectB b, ObjectC c) {    super(a,b,c); }}我的問題是如何在 java 中模仿為 kotlin 中的基類字段設置的 mock(),如下所示。class ClassXTest : ClassX(        a = mock(),        b = mock(),        c = mock())
查看完整描述

1 回答

?
PIPIONE

TA貢獻1829條經驗 獲得超9個贊

您的 Kotlin 代碼定義了一個子類 ClassXTest,它有一個不帶參數的構造函數,并使用 3 個模擬調用超級構造函數。


所以如果你想在 Java 中使用相同的方法,你還需要一個不帶參數的構造函數并使用 3 個模擬調用超級構造函數:


public class ClassXTest extends ClassX {

    public ClassXTest() {

        super(mock(ObjectA.class), mock(ObjectB.class), mock(ObjectC.class));

    }

}

我真的很奇怪為什么要創(chuàng)建一個子類,而不是僅僅使用現有的類并將 3 個模擬作為參數傳遞給其現有的構造函數。


查看完整回答
反對 回復 2023-06-14
  • 1 回答
  • 0 關注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號