Java中的static关键字详解
Java中的static关键字详解
1、是什么
静态修饰符;
2、有什么用
程序运行时由系统分配存储空间来存储数据,存储空间由系统自动回收。静态意思就是指定所分配的某一块存储空间一直存在,直到程序退出后才会释放该存储空间;
、Java中被static关键字修饰的成员
Java中被static关键字修饰的成员成为静态成员,或者类成员,该成员属于类而不属于类的实例对象,在类被加载时自动进行初始化,可以通过类名.成员名直接调用(普通成员需要创建类的实例对象,通过实例对象.成员名进行调用);
1、变量分类
类的成员变量按照是否被static修饰,分为静态成员变量和普通成员变量;
2、静态变量和普通变量的区别
备注:实例对象也可以调用静态变量,但不建议不这么做;
、静态变量的优缺点
优点:
方便:属于类级别的,不需要创建对象就可以直接使用;
唯一:全局唯一,内存中唯一,静态变量可以唯一标识某些状态;
省内存:在类加载时候初始化,常驻在内存中,唯一,直到程序退出;
缺点:
线程不安全;
内存负担:长时间驻留在内存中,若静态变量过多,会加重内存负担;
无法调用非静态成员;
4、静态变量使用场景
适合作为全局变量进行定义;
1、方法分类
类的成员方法按照是否被static修饰,分为静态成员方法和普通成员方法;
2、静态方法和普通变量的区别
备注:实例对象也可以调用静态方法,但不建议不这么做;
、静态方法的优缺点
优点:
方便:属于类级别的,不需要创建对象就可以直接使用;
缺点:
线程不安全;
内存负担:长时间驻留在内存中,若静态变量过多,会加重内存负担;
无法调用非静态成员;
备注:上面的都是理论知识,实际开发中,根据实际项目需求进行灵活调整即可。
4、静态方法使用场景
经常被使用到工具类中;
1、概述
static静态代码块不属于任何类成员,可以出现多个,类加载时会按照先后顺序执行,只会执行一次!
2、使用场景
对静态变量进行初始化;
1、静态代码块、普通代码块、构造函数执行机制
静态代码块:
当类加载时,执行静态代码块,只执行一次;
普通代码块、构造函数:
当创建对象时,执行普通代码块和构造函数,先执行普通代码块后执行构造函数;
执行机制:
调用静态变量或者静态方法时执行静态代码块;
第一次创建对象时执行静态代码块——普通代码块——构造函数;
第二次及之后再创建对象时执行普通代码块——构造函数;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent 删除对象内存javastatic变量#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上一篇:【Redis】001
推荐阅读
留言与评论(共有 13 条评论) |
本站网友 温州电影 | 3分钟前 发表 |
直到程序退出后才会释放该存储空间; | |
本站网友 平安理财 | 11分钟前 发表 |
会加重内存负担;无法调用非静态成员;备注:上面的都是理论知识 | |
本站网友 海德堡花园 | 12分钟前 发表 |
静态方法和普通变量的区别备注:实例对象也可以调用静态方法 | |
本站网友 曾可 | 4分钟前 发表 |
static关键字概述1 | |
本站网友 非普通住房 | 17分钟前 发表 |
概述static静态代码块不属于任何类成员 | |
本站网友 恢复被删除的相片 | 2分钟前 发表 |
普通代码块 | |
本站网友 gogou | 24分钟前 发表 |
根据实际项目需求进行灵活调整即可 | |
本站网友 动作图片 | 14分钟前 发表 |
唯一 | |
本站网友 哈尔滨广厦学院 | 16分钟前 发表 |
是什么静态修饰符;2 | |
本站网友 癫痫病军海医院 | 10分钟前 发表 |
内存中唯一 | |
本站网友 陈友 | 9分钟前 发表 |
静态变量使用场景适合作为全局变量进行定义;三 | |
本站网友 糖尿病饮食疗法 | 0秒前 发表 |
静态变量使用场景适合作为全局变量进行定义;三 |