java中final关键字的使用

          1 :在java中final可以修饰类,方法,变量(包括成员变量和局部变量)

  • 第一点:修饰类 特点:修饰的类不能被继承而且成员变量也是可以根据自己需要设置fianl
  • 但final类中的所有成员方法都会被隐式地指定为final方法(不是特殊要求尽量不要加final关键字在类上
  • final 类不能被继承,没有类能够继承 final 类的任何特性。。
  • fianl class test{
    }

     

  • 第二点:fianl在方法上 特点:把方法锁定,以防任何继承类修改它的含义(如果禁止该方法在子类中被覆盖的情况下才将方法设置为final的,就可以使用fianl关键字来修饰。
  • public final void a(){
            System.out.println("如果禁止该方法在子类中被覆盖的情况下才将方法设置为final的)\n" +
                    "就是父类的final方法是不能被子类所覆盖的,也就是说子类是不能够存在和父类一模一样的方法的。就可以使用fianl关键字来修饰");
        }

     

  • 第三点:修饰变量 特点: 当final修饰一个基本数据类型时,表示该基本数据类型的值一旦在初始化后便不能发生变化;
     final String zhi=“这个值被fianl修饰就不能再改变”;

     

  • 如果final修饰一个引用类型时,则在对其初始化之后便不能再让其指向其他对象了,但该引用所指向的对象的内容是可以发生变化的。
  • 因为fianl修饰的引用类型 它可以改变里面的内容 因为fianl修饰是指向它的地址 只要他的地址不改变。
  • public class Time {
        public static void main(String[] args) {
            final Test1 test = new Test1();
            System.out.println(--test.i);
        }
    }
    class Test1 {
        public int i = 100;
    }

     

posted @ 2021-01-26 21:35  小杰i  阅读(174)  评论(0编辑  收藏  举报