介绍一下static关键字

在Java中,被static修饰的成员称为静态成员,static关键字可以用来修饰方法或者成员变量,且被static修饰的方法或者成员变量属于类方法或者类属性,也就是说被static修饰的方法或者成员变量不是单独存储在某一个对象的空间,是被所有该类的所有实例化对象共享的,最好的证明方式就是静态成员变量既可以通过对象来访问,也可以通过类名来访问,一般更推荐后者

其次,对于静态成员变量来说,静态成员变量是在类加载时就被分配内存的,它是存储在JVM中的方法区中

接着针对静态方法来说,在静态方法中不能访问非静态成员变量,且在静态方法中不能访问非静态方法,因为在静态方法中没有this引用

然后就是被static修饰的方法无法实现被重写,不能用来实现多态

还有就是静态成员变量是可以通过静态代码快来进行初始化,而静态代码块是在类加载时初始化的,且只会加载一次,且静态代码快加载的优先级是高于实例代码快的优先级的

最后一个就是在静态内部类中只能访问外部类的静态成员方法或者静态成员变量

相关推荐
niucloud-admin几秒前
JAVA V6 多商户商城 开发文档——JAVA服务端
java·开发语言
alexlifexyz15 分钟前
写了个 Claude Code 插件:AI 写的 Java 违反阿里规约,就写不进文件
java
威哥爱编程28 分钟前
【AI全栈12-01】Spring Boot 为何是 AI 全栈后端优选
java·spring boot·后端
威哥爱编程30 分钟前
【AI全栈12-03】Spring Boot 用多模型路由把智能客服成本降下来
java·spring boot·后端
威哥爱编程30 分钟前
【AI全栈12-02】Spring Boot 跑通第一个 AI 对话接口:HR 政策问答机器人实战
java·spring boot·后端
Wang's Blog32 分钟前
Java 中间件之 RabbitMQ 快速入门: 异步通讯的优缺点
java·中间件·java-rabbitmq
用户0942485680333 分钟前
第31章:JVM字节码解释器与模板解释器源码路径
java·jvm
子非鱼a38 分钟前
【WEB】EasySSTI
java·开发语言·前端
m0_587383001 小时前
深圳 24 小时自助健身房系统软件开发实战指南与案例解析
java·spring boot·小程序·架构·需求分析
Nebula_g1 小时前
JavaSE项目实践:红包雨-线程池/线程
java·开发语言