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内部类

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

  • 相关阅读:
    Windows命令处理进程
    Linux 文件权限管理
    Linux 用户与用户组管理
    Linux 文件类型及操作
    快速了解必要的网络知识
    SSH免密码登录
    用SSH访问内网主机的方法
    MongoDB与PostgresQL无责任初步测试
    SpringMVC的Action在同一时间里只允许同一个浏览器的单次进入?
    Netty5使用自签证书实现SSL安全连接
  • 原文地址:https://www.cnblogs.com/gosun/p/6957487.html
Copyright © 2011-2022 走看看