static变量、static方法之间的异同
2024-10-19 11:38:26
private SchemeBean getEmptyScheme() {
SchemeBean scheme = new SchemeBean();
scheme.setCost("");
scheme.setDuration("");
scheme.setNightflag("");
scheme.setWalkingDistance("");
return scheme;
}
一个简单的这样的方法,完全可以写成static类型。线程也安全,那static方法,到底会不会有性能提升?是不是static方法,在class实例化的时候,就不用跟static类变量似的,不用每次都加载了?
以下是我自己思考的结果,不一定对:
static变量,肯定是在perm存一份。没线程安全问题的情况下,用static肯定会比不用好。
static方法,肯定也是在perm中存一份。不是每次类实例化的时候加载方法,方法不跟变量一样,方法只会存一份在perm,实例化的时候,非static变量会在线程栈中存一份。但是方法不一样,非static和static都是一样执行,从perm中copy出来到线程栈,然后运行。
所以在存储和效率上,static方法和非static,一点不同都没有。只是static方法可以不用实例化调用而已。
最新文章
- C# Enum,Int,String的互相转换 枚举转换
- JS如何实现点击页面内任意的链接均加参数跳转?
- iOS开发中GCD在多线程方面的理解
- PHP - PDO 之 mysql 事务功能
- Learning WCF Chapter2 Messaging Protocols
- IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权
- vs2017中生成.Net Standard Libarary的Nuget Package
- Java文件操作类效率对比
- pytorch的backward
- 非关系型数据库mongodb的语法模式
- PHP 标准规范,PSR-1,PSR-2,PSR-3,PSR-4,PSR-5,PSR-6,PSR-7及其他标准
- nvm 淘宝镜像
- oracle数据库添加新用户
- JAVA内部类小结
- 集合,ArrayList
- Git for Windows之日志查看与版本切换
- RabbitMQ入门介绍
- wampserver中php版本的升级
- python,tensorflow,CNN实现mnist数据集的训练与验证正确率
- Linux无法登录,显示module is unknown,一闪而过
热门文章
- How TCP clients and servers communicate using the TCP sockets interface
- linux下的时间管理概述
- Linux系统的SVN客户端使用技巧详解
- POJ1088:滑雪(简单dp)
- shiro 密码如何验证?
- Linux mount Windows目录
- VMware+CentOS7+jdk1.7+hadoop2.4.1
- Linux系统——文件和目录权限
- [笔记]Delphi 2007写DLL供VC调用实例
- PHPCMS 小节