• Java中static与final的用法 hunter


    static

    static意为静态的,但凡被static修饰说明属于类,不属于类的对象。
    加载:static在类加载时初始化(加载)完成。
    可修饰:

    • 内部类
    • 方法
    • 成员变量
    • 代码块

    注意:
    static方法不能兼容this关键字。
    你不能覆盖Java中的静态方法,因为方法覆盖基于运行时的动态绑定,静态方法在编译时使用静态绑定进行绑定。
    虽然可以在子类中声明一个具有相同名称和方法签名的方法,看起来可以在Java中覆盖静态方法,但实际上这是方法隐藏。

    final

    加载:final可以在编译(类加载)时初始化,也可以在运行时初始化,初始化后不能被改变。
    可修饰:类、内部类、方法、成员变量、局部变量、基本类型、引用类型。

    • final修饰基本类型:值不能被修改
    • final修饰引用类型:引用不可以被修改也就是说不能指向其他对象,但是该引用的对象内容可以被修改
    • final修饰方法,方法不可以重写,但是可以被子类访问,前提是方法不是private类型
    • final修饰类,类不可以被继承

    static final

    可修饰:成员变量、方法、内部类。

    • 成员变量:属于类的变量且只能赋值一次
    • 方法:属于类的方法且不可以被重写
    • 内部类:属于外部类,且不能被继承
  • 相关阅读:
    Linux上统计文件夹下文件个数
    linux----tail 过滤日志文件中的关键字
    Linux----Makefile
    Python--day 3
    Python--day 2
    Python--day 1
    Ubuntu14.04 64位网易云播放器
    qt 串口通信学习的目录
    qt layout 注意要点
    模拟电子第一章半导体
  • 原文地址:https://www.cnblogs.com/hunter-w/p/15625949.html
Copyright © 2020-2023  润新知