zoukankan      html  css  js  c++  java
  • Java final关键词

    • final关键词的四种用法

       *
       * final 关键字:最终的、不可改变的
       *              1、可以用来修饰一个类
       *              2、可以用来修饰一个方法
       *              3、可以用来修饰一个局部变量
       *              4、可以用来修饰一个成员变量
       *
       *
       * 1、final 修饰一个类:
       * 格式:
       * public class final 类名称 {
       *     // 方法区
       * }
       * 含义:当前的类不能更改,不能有子类(太监类)
       *      不能使用一个 final 修饰的类来当父类,这个类里面的所有方法也就不能进行覆盖重写了。
       *
       *
       * 2、final 修饰一个方法:
       * 格式:
       * 修饰符 final 返回值类型 方法名称(参数列表) {
       *     // 方法体
       * }
       * 含义:该方法所在的类可以被继承(即可以是其他类的父类),
       *      但是这个方法不能给覆盖重写,用final修饰后就不可以更改了
       * 注意事项:对于类、方法来说,关键词abstract和final不能同时使用,因为会矛盾。
       *          abstract 修饰的类、方法是一定要给覆盖重写的,而 final 修饰的类是不能更改的(即不能给覆盖重写的)
       *          所以关键词abstract和final不能同时使用
       *
       *
       * 3、final 修饰一个局部变量
       * 一旦使用 final 修饰的局部变量,那么这个变量将不能进行更改,
       * "一次赋值,终生不变"
       * 注意事项:
       *          对于基本数据类型来说,不可变的是变量当中的数据值
       *          对于引用苏剧类型来说,不可变的是变量当中的地址值
       *
       *
       * 4、final 修饰一个成员变量
       * 对于成员变量来说,使用了 final 来修饰,那么这个变量同样也是不可以进行更改的,且需要马上赋值,否则无意义
       * 假如你用final修饰来一个成员变量,没有赋值,那么该成员变量的值是默认值,且不可以更改,那么定义这个成员变量就是无意义的
       * 注意事项:
       *          (1)成员变量具有默认值,所以用了final修饰后,必须手动赋值,不会再给默认值了。
       *          (2)对于final的成员变量,要么直接赋值,要么通过构造方法赋值(二者选其一)。
       *          (3)必须保证类当中所有的构造方法,最终都对final成员变量进行赋值。
       *
    • final修饰成员变量

  • 相关阅读:
    从零开始学android开发-setBackgroundDrawable与setBackgroundResource的区别
    从零开始学android开发-用Intent启动Activity的方法
    从零开始学android开发-View的setOnClickListener的添加方法
    从零开始学android开发- 应用程序窗体显示状态操作requestWindowFeature
    从零开始学android开发- layout属性介绍
    android常见错误--Unable to resolve target ‘android
    Html+jquery mobile
    用jQuery Mobile做HTML5移动应用的三个优缺点
    Chrome Apps将可以打包成iOS或Android应用
    [转]0.python:scikit-learn基本用法
  • 原文地址:https://www.cnblogs.com/liyihua/p/12050591.html
Copyright © 2011-2022 走看看