static 关键字
java中static的四种使用情况
1.static成员变量
static修饰的静态变量,属于类,在内存中只有一个复制,只要静态变量所在的类被加载时,这个静态变量就会被分配空间。
2.static成员方法
static修饰的方法不需要创建对象,就可以直接调用,类名打点的方式
static方法中不能使用this和super关键字,不能调用非static方法,也不能访问非static成员变量
1 /* 2 如何保证一个类不能被手动创建对象? 3 1.将这个类定义成抽象的 4 2.私有化构造方法 5 通常用在工具类中,将方法用static修饰 6 */ 7 class A{ 8 private A(){} 9 static void show(){ 10 System.out.println("A show()"); 11 } 12 13 } 14 public class AbstractDemo3{ 15 public static void main(String[] args){ 16 //无法调用私有的构造方法 17 // A a = new A(); 18 A.show(); 19 } 20 }
3.static代码块
static代码块独立于成员变量和成员函数,只会被执行一次
4.static和final结合
表示变量,static和final,一旦被赋值不能被改变,通过类名可以访问
边上方法,static和final,该方法不能被重写,通过类名可以访问
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下