在kotlin中释放变量

时间:2017-09-27 17:24:12

标签: junit kotlin

在kotlin中,为了编写测试,我在setUp阶段的每个测试之前创建了一个guice注入器,然后我尝试在tearDown阶段解除分配:

class MyTestClass {
    ....
    var injector: Injector? = null
    ...
    @Before
    fun setUp() {
        ...
        injector = Guice.createInjector(modules)
        ...
    }
    @After
    fun tearDown() {
        ...
        injector = null
    }

    @Test
    fun myFirstTest() {
        myInstance = injector?.getInstance(Key.get(MyClass::class.java))
        // use myInstance here
        ...
    }
    ...
}

我的问题是,在Kotlin的土地上,是否需要这样的解除分配?如果有必要,最好的方法是什么?

1 个答案:

答案 0 :(得分:3)

不,这没有必要,甚至没有解除分配。您所做的只是将injector重新绑定为null。旧的值仍然在没有引用的内存中挂起。垃圾收集器在认为合适时会清理内存。