码迷,mamicode.com
首页 > 其他好文 > 详细

kotlin中访问封闭作用内的变量

时间:2018-12-19 12:53:54      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:open   匿名对象   匿名   code   style   otl   修改   override   ring   

在java中,匿名对象访问封闭作用域内的变量,需要用final 声明变量在java8中,如果只是使用封闭作用域内的变量,该变量并不需要使用final,但是一旦修改值,就需要使用final 来声明变量.

fun main(arg: Array<String>) {
    var n = 2
    progress(object :MyClass(){
        override fun test() {
            if (n==2){
                println("success")
                n=3//可以修改值
                print(n)
            }else{
                print("err")
            }

        }
    })
}

open class MyClass {
    open fun test() {

    }
}

fun progress(obj: MyClass) {
    obj.test()
}

 

kotlin中访问封闭作用内的变量

标签:open   匿名对象   匿名   code   style   otl   修改   override   ring   

原文地址:https://www.cnblogs.com/loaderman/p/10142142.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!