为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用拖动器 2 创建一个带有模拟数据的单例类?

如何使用拖动器 2 创建一个带有模拟数据的单例类?

慕娘9325324 2022-05-21 20:56:18
我想知道是否可以使用模拟数据和拖动器创建一个单例我知道不使用拖动器 2 的标准代码public class Singleton {    private Singleton() { }    private static class SingletonHolder {        private static final Singleton INSTANCE = new Singleton();    }    public static Singleton getInstance() {        return SingletonHolder.INSTANCE;    }    public String getFoo() {        return "bar";    }}在这里,我知道将带有数据的数组列表放在哪里进行模拟,但是如何用匕首做到这一点,用于将 ArrayList 与数据一起放置的设置函数或类似函数在哪里,以及如何调用。
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

您只需要在其中一个模块中添加一个方法并使用 @Singleton 注释对其进行注释。例如:


@Module

public class MyModule {

    @Provides

    @Singleton

    MockData provideMockData() {

       return new MockData(Arrays.asList("A", "B", "C"));

    }


    @Provides

    OtherClass provideOtherClass(MockData mockData) {

       return new OtherClass(mockData);

    }

}


public class MockData {


    private List<String> list;


    public MockData(List<String> list){

        this.list = list;

    }


    public List<String> getList() {

        return list;

    }

}

检查https://google.github.io/dagger/users-guide.html中的“单例和作用域绑定”部分


查看完整回答
反对 回复 2022-05-21
  • 1 回答
  • 0 关注
  • 88 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号