您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页Java final关键字用法

Java final关键字用法

来源:爱go旅游网
Java final关键字用法1. final关键字用法1.1 final的意义final:最终的,不可更改的 1.2 final的使用1.2.1 final修饰方法表示这个方法不能被子类重写。例如:Object类中的getClass()class Father{ public final void method(){ System.out.println(\"father\"); }}class Son extends Father{ public void method(){//错误 System.out.println(\"son\"); }}1.2.2 final修饰类表示这个类不能被继承,没有子类。提高安全性,提高程序的可读性。例如:String类、System类、StringBuffer类final class Eunuch{//太监类 }class Son extends Eunuch{//错误 } 1.2.3 final修饰变量final修饰某个变量(成员变量或局部变量),一旦赋值,它的值就不能被修改,即常量,常量名建议使用大写字母。例如:final double MY_PI = 3.14;如果某个成员变量用final修饰后,没有set方法,并且必须初始化(可以显式赋值、或在初始化块赋值、实例变量还可以在构造器中赋值)修饰成员变量 public final class Test {    public static int totalNumber = 5;    public final int ID;    public Test() {        ID = ++totalNumber; // 可在构造器中给final修饰的“变量”赋值   }    public static void main(String[] args) {        Test t = new Test();        System.out.println(t.ID);   }}修饰局部变量:public class TestFinal {    public static void main(String[] args){        final int MIN_SCORE ;        MIN_SCORE = 0;        final int MAX_SCORE = 100;        MAX_SCORE = 200; //非法   }}错误演示:class A {    private final String INFO = \"atguigu\";  //声明常量    public void print() {        //The final field A.INFO cannot be assigned        //INFO = \"尚硅谷\";   }}1.3 笔试题题1:排错public class Something {    public int addOne(final int x) {        return ++x;        // return x + 1;   }} 题2:排错public class Something {    public static void main(String[] args) {        Other o = new Other();        new Something().addOne(o);   }    public void addOne(final Other o) {        // o = new Other();        o.i++;   }}class Other {    public int i;}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务