final,finally,finalize的区别

1.final
final是一个修饰符,用来修饰变量,方法和类,分别表示属性不可变,方法不可被重写,类不可被继承
(1)修饰类,类不能被继承
(2)修饰变量,变量是常量
(3)修饰方法,方法不能被重写

class StringJoinTest{
    public static void main(String[] args){
        String s1="Java";
        String s2="Ja"+"va";
        //先声明s1,这时在内存中就会储存一个"Java"
        //当声明s2时,在编译期间就可以确定时"Java",所以为true
        System.out.println(s1==s2);
        final String str1="Ja";
        final String str2="va";
        //s3在编译期间执行宏替换,str1和str2指的时具体的值
        //String str1="Ja";
        //String str2="va";
        //编译时无法确定str1和str2的值
        String s3=str1+str2;
        System.out.println(s1==s3);
    }
}

2.finally
finally是异常处理语句结构的一部分,表示总是执行
3.finalize
是Object类的一个方法,用于垃圾回收

上一篇:final finally finalize区别


下一篇:Dubbo中几种负载均衡方式