zoukankan      html  css  js  c++  java
  • java 关键字 final

    final:最终的,确保使用前是被赋值得,一旦赋值后不可修改。

     1  数据

      ①局部变量

        基本数据类型:

          可以先定义后赋值,但要保证在使用前是已被赋值的,一旦赋值后不可修改;

        引用数据类型:

          可以先定义后赋值,但要保证在使用前是已被赋值的,一旦赋值后不可修改;

          引用内容不可修改,但备用用的对象内容可以被修改;

      ②成员变量

          必须保证成员变量在使用前被赋值;

          成员变量赋值的方式有两种,1声明变量时赋值,2构造函数中赋值;

        public static void main(String[] args) {
            
            //局部变量
            //①基本数据类型
            final int val;//先定义
            // val = val + 1;//报错没有赋值,无法使用
            val = 7 ;//再赋值
            
            //②引用数据类型
            final Score score = new Score("Jack",98,95,90);
            score.toString();
            //score = new Score("Tom",77,89,99);//引用无法再次修改
            score.name = "Tom";
            score.toString();
            
        }

    2  方法参数

      在方法参数上做 final 修饰后,整个方法体内参数值不允许被改变。

    public Score(final String name,int yuWen, int shuXue, int yingYu) {
            //name = "jack";//报错
            this.name = name;
            this.yuWen = yuWen;
            this.shuXue = shuXue;
            this.yingYu = yingYu;
        }

    3  方法

      在方法上做 final 修饰后,被继承的子类无法覆盖此方法,可以被继承。

      不可以修饰构造方法。

    3 类

      在类上做 final 修饰后,此类不允许被继承。

      违背了面向对象编程中的 “ 继承 ”

  • 相关阅读:
    ConditionedActivityGroup
    一个WF系统架构草图
    新添加了一个栏目
    入门篇(3):了解一下Activity的使用
    再谈调用子流程(2)
    自定义WorkflowRole
    ListenActivity
    WhileActivity
    我是一只鸟
    得到工作流结点列表
  • 原文地址:https://www.cnblogs.com/devan/p/11496580.html
Copyright © 2011-2022 走看看