java中的Static、final、Static final各种用法详解

前言
对Static、final、Static final这几个关键词熟悉又陌生?想说却又不知怎么准确说出口?好的,本篇博客文章将简短概要出他们之间的各自的使用,希望各位要是被你的面试官问到了,也能从容的回答...

static

加载:static在类加载时初始化(加载)完成

含义:Static意为静态的,但凡被static 修饰说明属于类,不属于类的对象。

可修饰:Static 可以修饰 内部类、方法、成员变量、代码块

不可修饰:Static不可修饰外部类、局部变量【static 属于类的,局部变量属于其方法,并不属于类】

注意:static 方法不能兼容this关键字【static代表类层次,this代表当前类的对象】

引发问题:构造方法是静态方法吗?【不是,构造方法可以有this】

static主要作用:方便调用没有创建对象的方法/变量。

关于static,博主特地写了一篇博客,如果对final概念不是特别清晰,大家可以看看

程序员你真的理解static吗?

final

加载:final可以在编译(类加载)时初始化,也可以在运行时初始化,初始化后不能被改变。

可修饰:类、内部类、方法、成员变量、局部变量、基本类型、引用类型

含义:final“最终的”的意思,在Java中又有意为常量的意思,也就是被final修饰的只能进行一次初始化!

被final修饰各种所蕴含的特殊意义:

1、 final 修饰基本类型:值不能被修改;

 

2、final 修饰引用类型:引用不可以被修改也就是说不能指向其他对象,但是该引用的对象内容可以被修改;

 

3、final 修饰 方法,方法不可以重写,但是可以被子类访问 【前提:方法不是 private 类型】。

 

4、final 修饰 类,类不可以被继承。

关于final,博主特地写了一篇博客,如果对final概念不是特别清晰,值得大家看看

程序员你真的理解final关键字吗?

Static final

含义:从字面也可以知道,它代表Static与final二者的共同体。

可修饰:依旧是取二者的共同体,所以只能修饰成员变量、方法、内部类,被Static final修饰意义分别如下:

1、成员变量:属于类的变量且只能赋值一次。

 

2、方法:属于类的方法且不可以被重写。

 

3、内部类:属于外部类,且不能被继承

本篇文章只是简短概要它们之间的使用,希望各位要是被面试官问到了,也能从容的回答...若有不正之处,希望谅解并欢迎批评指正。

欢迎各位关注我的公众号,一起探讨技术,向往技术,追求技术...

在这里插入图片描述

posted @   宜春  阅读(2461)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示