相比synchronized,final和volatile也是经常使用的关键字,下面聊一聊这两个关键字的使用和实现 1.使用 final使用: 修饰类表示该类为终态类,无法被继承 修饰方法表示该方法无法重写,编译器可以内联编译 修饰对象表示该对象引用一旦初始化后,无法被修改 将参数传递到匿名内部类中,参数需要声明为final,其实外部类对与匿名内部类来说就是一个闭包,而java在匿名内部类中拷贝了一份,没有实现引用同步,所以要求参数不可变(参考:https://www.zhihu.com/que…