博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
util工具类中的方法为什么要用static修饰?
阅读量:3524 次
发布时间:2019-05-20

本文共 745 字,大约阅读时间需要 2 分钟。

关于static学习的次数真的很多,每次搞得好像似懂非懂,这次就来一次深刻认识

public static void reflectAct(Object model) throws Exception{        for (Field field : model.getClass().getDeclaredFields()) {            field.setAccessible(true);            System.out.println(field.getName() + ":" + field.get(model) );        }    }

以这段代码为例,这是util工具类中的一个方法,当在其他类调用该静态方法时是随着类的定义而被分配和装载入内存中。而非静态方法属于对象的具体实例,只有在类的对象创建时在对象的内存中才有这个方法的代码段。

一个是在类的定义时分配和装载且只会装载一次,一个是在类的创建时才会装载到内存。这需要对有一定的认识。在java中另外一个和此密切关联的就是。

这样做有什么好处呢?

static 是静态的 属于公共的 不需要实例化

如果你不是static 你就必须 先实例化类 然后再调用 该方法,既然是util类,那肯定是公用的,比如一个连接数据库的工具类,项目运行时会多次使用,非静态就会产生大量实例还有一堆数据库连接,占用太多资源,静态类避免了这个问题,或略这个问题的代价是很大的。

再比如使用util工具类的时候,你会发现上来直接就是 类名.方法名。还没有实例化就可以调用,这就是static的好处了。

被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问

转载地址:http://bkeqj.baihongyu.com/

你可能感兴趣的文章
JavaEE Spring与MyBatis的整合之传统DAO方式整合(教材学习笔记)
查看>>
JavaEE MyBatis与Spring的整合——基于mapper接口方式开发(教材学习笔记)
查看>>
JavaWeb 使用Cookie实现——显示用户上次访问时间(教材学习笔记)
查看>>
Omap138开发板下以uboot2012.04.01为例分析uboot执行(五)
查看>>
Omap138开发板下以uboot2012.04.01为例分析uboot执行(六)
查看>>
Omap138开发板下以uboot2012.04.01为例分析uboot执行(七)
查看>>
Omap138开发板下以uboot2012.04.01为例分析uboot执行(八)
查看>>
中国大学MOOC—陆军工程大学数据结构MOOC习题集(2018秋)7-3 中位数
查看>>
Java发送邮件 注册成功发送邮件
查看>>
Mybatis的简单使用(增删改查),解决数据库字段名和实体类映射属性名不一致的问题
查看>>
Mybatis配置log4j文件 分页查询(limit,rowBounds)
查看>>
Mysql利用注解进行开发
查看>>
Mybatis一对多查询,多对一查询
查看>>
Spring配置bean.xml文件的头目录模板
查看>>
代理模式之------动态代理
查看>>
Spring实现AOP的三种方式
查看>>
Mybatis-Spring简单的配置和使用,配置事务
查看>>
SpringMVC和Mybatis整合使用的配置文件
查看>>
代码特效插件pycharm
查看>>
python实现tcp客户端从服务端下载文件
查看>>