zoukankan      html  css  js  c++  java
  • java基础之final/static/static final

    一、final

      1.final修饰变量(常量)

        final修饰的成员变量表示常量,一旦给定初值既无法改变

      2.final方法

        final修饰方法,表示该方法不能被子类重写

        好处:比非final方法要快,因为在编译时已经静态绑定了,不需要在运行时在动态绑定。 

      3.final类

        final修饰类,表示该类不能被继承,因此该类的所有方法也不能被重写

      4.final参数

        final修饰函数参数时,表示该参数可以被调用,但是不能被修改其值

    二、static

      static一般表示“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块

      1.static变量

        先讲一个概念:被static修饰的变量称静态变量或类变量;没有被static修饰的变量称之为实例变量

        当JVM加载类后,通过类名直接访问静态变量,类的所有实例共享一个静态变量,换个方式讲就是JVM只为静态变量分配一次内存,在加载类的过程中完成;而对于实例变量,每创建一个实例变量都会分配一个内存

      2.static方法

        静态方法只能访问所属类的静态成员变量和方法

      3.static代码块

        静态代码块:类中独立于类成员,JVM加载类的时候按照其先后顺序执行,无需实例化

    三、static final

      1.static final 变量

        属于类的变量且只能赋值一次

      2.static final方法

        属于类的方法且不能被重写

      3.static final内部类

        属于外部类,且不能被继承

  • 相关阅读:
    JavaScript 相等(==)与全等(===)操作符
    JavaScript 判断空对象、空数组的方法
    JavaScript中的深拷贝与浅拷贝
    JS trim去除字符串收尾指定字符
    Django+Markdown+Pygments 支持Markdown 实现代码高亮
    crontab 定时服务
    程序员如何修复婚姻的bug
    向Mysql 中插入汉字(Emoji)出现 Incorrect string value
    根据html页面id寻找对应的Js文件
    Django Pagination
  • 原文地址:https://www.cnblogs.com/gosun/p/6957487.html
Copyright © 2011-2022 走看看