首页 > 代码库 > Java关键字final

Java关键字final

     在Java中可以使用final关键字声明类、属性、方法,在声明时需要注意以下几点:

     使用final声明的类不能有子类;

     使用final声明的方法不能被子类所覆写,可以被重载;

class Person {
    final void fly() {
        System.out.println("不能被重写,但能被重载");
    }
}
class Student extends Person {
    /*
     * void fly(){ System.out.println("不能被重写!"); }
     */
    void fly(int a) {
        System.out.println("可以重载!");
    }
}

     使用final声明基本数据类型变量时,不能对基本类型重新赋值;当引用型变量时,它仅仅保存的是一个引用,final保证的是这个引用类型的变量所引用的地址不会变。即一直引用同一个对象,但是这个对象的值可以改变

package com.example;

import java.util.Arrays;

/**
 * @author yyx 2017年6月29日
 */
public class Test {
    public static void main(String[] args) {
        /*
         * final int A=3; A=4; 不能重新赋值
         */
        final int[] ARR = { 1, 2, 3, 4, 5 };
        Arrays.fill(ARR, 6);
        System.out.println(Arrays.toString(ARR));
    }

}

     注意:在使用final声明变量时,要求全部的字母大写

 

Java关键字final