1、检查类是否加载。
当虚拟机遇到new指令时,首先检查该指令的参数能否在常量池中定位为一个类别的符号引用,检查该符号引用代表的类别是否加载、分析和初始化。否则,执行类加载过程。
2、为目标分配内存。
在完成类加载后,虚拟机会开始为目标分配存储器,此时确定所需存储器的大小。只需在堆上分配必要的内存即可。
3、为分配的存储空间初始化零值。
对象的存储器分配完成后,对象的存储器空间需要初始化为零,保证对象即使没有初始值,也可以直接使用。
4、对受众进行其他设置。
分配内存空间,初始化零值后,虚拟机还需要对对象进行其他必要的设置,设置场所在对象头部,包括该对象所属类、类元数据信息、对象hashcode、GC代理年龄等信息。
5、执行init方法。
执行上述步骤后,即使虚拟机中的对象成功,Java程序也需要实施init方法,因为此时的对象只是初始化的零值,没有真正根据程序中的代码分配初始值,所以调用init方法后,这个对象真的可以使用。
1.SpringMVC,Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架。
2.Shiro,Apache Shiro是Java的一个安全框架。
3.Mybatis,MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。
4.Dubbo,Dubbo是一个分布式服务框架。
5.Maven,Maven是个项目管理和构建自动化工具。
6.RabbitMQ,RabbitMQ是用Erlang实现的一个高并发高可靠AMQP消息队列服务器。7.Ehcache,EhCache 是一个纯Java的进程内缓存框架。
以上是java中怎么创建对象的详细内容。更多信息请关注PHP中文网其他相关文章!