创建对象的相关知识补充

简介: 创建对象的相关知识补充

创建对象有六种方法:

一,使用new关键字

这个不必多说了,是最常见和最常用的。

二,Class对象的newInstance()方法

Class clazz = Class.forName(className);
Object obj = clazz.newInstance();

三,构造函数对象的newInstance()方法

Constructor constructor = Test.class.getConstructor();
Test test = constructor.newInstance();

四,对象反序列化

就是将一个对象序列化之后,通过反序列化的方式再还原成一个对象。


五,Object对象的clone()方法

clone()方法就是创建一个对象的副本,这个方法可以生成新的对象。


六,使用Unsafe类创建对象

Unsafe类使用起来并不安全,会加大出错的几率,因此官方并不推介使用。

使用反射方式得到Unsafe的对象,再调用allocateInstance(类名.class)可以拿到一个Object对象。


Java对象初始化的步骤:

在博客深入理解Java虚拟机读书笔记(二)–对象的创建与空间分配及定位中,有较为详细的描述,但是篇幅略长,这里做个总结。

步骤一:检查该类型是否已经加载并初始话,没有初始化的话向下一个步骤走。

步骤二:类被正确的加载完以后,在内存中分配空间以用来放置对象。

步骤三:内存分配完成后,将对象中的自己的字段和继承的字段都初始化为对应的零值。

步骤四:设置该对象的对象头,比如该对象是那个类的实现,GC分带信息等。

步骤五:通过构造函数,将字段赋值及其他信息完成,产生一个可用的对象。


再补充一下,类初始话的时候,各个部分的执行顺序。

如果一个类没有继承吉他类,那么初始化的顺序是:

静态变量–>静态代码块–>普通变量–>普通代码块–>构造函数


如果一个类有继承其他父类,那么初始化的顺序是:

父类静态变量–>父类静态代码块–>子类静态变量–>子类静态代码块–>父类普通变量–>父类普通代码块–>父类构造器–>子类普通变量–>子类普通代码块–>子类构造器

目录
相关文章
|
编解码 人工智能 物联网
如何快速搭建一个像“天猫精灵”的智能语音助手?
天猫精灵相信大家都不陌生了,它是阿里巴巴于2017年7月5日发布的AI智能终端品牌。让用户以自然语言对话的交互方式,实现影音娱乐、购物、信息查询、生活服务等功能操作,成为消费者的家庭助手。本文将介绍如何快速搭建一个像“天猫精灵”一样聪明的智能语音助手。
如何快速搭建一个像“天猫精灵”的智能语音助手?
|
10月前
|
弹性计算 运维 调度
阿里云渠道商:为什么阿里云服务器价格更具竞争力?
阿里云凭借自研技术、规模效应与精细化运营,实现服务器价格优势。全栈创新降低硬件成本,智能调度提升资源利用率,结合弹性计费与长期合约优惠,助力企业降本增效。
|
7月前
|
存储 缓存 数据处理
2核8G云服务器怎么样?2026年阿里云 2核8G云服务器价格解析与性能测评
在云服务器选型中,2 核 8G 配置是入门到进阶的过渡热门款,凭借 1:4 的 CPU 与内存黄金配比,既能满足个人开发者的项目测试需求,也能支撑中小企业轻量业务运行。无论是搭建个人博客、小型企业官网,还是部署轻量 APP 后端、运行基础数据库,它都能提供均衡算力与内存支撑,避免 “算力过剩浪费” 或 “内存不足卡顿”。下面从价格、配置、性能三方面详细解析,帮你判断是否适配自身需求。
|
8月前
|
存储 弹性计算 缓存
阿里云服务器型u1实例2核4G5M80G云盘199元1年简单测评:看看是否值得选择?
目前,阿里云服务器2核4G配置价格最低的是一款199元一年的云服务器,目前活动中推出了一款极具吸引力的通用算力型u1实例云服务器,配置为2核4G、5M带宽、80G ESSD Entry云盘,活动优惠价仅为199元/年。而且续费价格不变,这一价格相较于日常价有着非常大的优惠,那么,这款云服务器究竟是否值得选择呢?本文从价格、续费、实例性能等多个方面为大家分析,以供选择参考。
452 12
|
数据采集 5G 定位技术
时统设备有什么用途、时统终端、时间统一设备
时统设备是一种关键的时间同步系统,广泛应用于通信与科研领域。在通信领域,它确保核心网、无线基站及卫星通信的精准时间同步,提升网络稳定性与服务质量;在科研领域,支持粒子对撞、量子实验、化学反应研究及天文观测等,保障数据精确性与协同性。其高精度特性推动科技探索与发展,为现代科技进步提供重要支撑。文章版权归西安同步电子科技有限公司所有,严禁未经授权转载或洗稿。
|
9月前
|
程序员 开发工具 git
Git
Git不仅是代码管理工具,更是一场认知革命。它以分布式架构重塑时间与存在,用分支、合并与提交构建人类处理复杂性的新思维模式,推动协作与创造的范式进化。
|
8月前
|
SQL 人工智能 Apache
Apache Flink 2.2.0: 推动实时数据与人工智能融合,赋能AI时代的流处理
Apache Flink 2.2.0 发布,增强AI能力,支持ML_PREDICT与VECTOR_SEARCH,提升物化表、批处理及PyFlink性能,优化连接器与调度,助力实时智能数据处理。
569 0
|
10月前
|
Web App开发 数据采集 JavaScript
利用Selenium和PhantomJS提升网页内容抓取与分析的效率
利用Selenium和PhantomJS提升网页内容抓取与分析的效率
|
数据采集 SQL 监控
ETL还是ELT,大数据处理怎么选更靠谱?
在数据处理中,ETL(抽取、转换、加载)与ELT(抽取、加载、转换)是两种核心流程。ETL强调在数据入库前完成清洗和转换,适合质量要求高、转换复杂的场景;而ELT则先将原始数据快速入库,再利用现代数仓的计算能力进行转换,更适合大数据和实时分析需求。选择哪种方式,需根据数据量、转换复杂度、系统资源及业务需求综合判断。
|
存储 人工智能 容灾
三大国际解决方案“一键上线”,阿里云飞天企业版为全球客户打造AI时代最开放的云
刚刚,2025阿里云国际峰会「Alibaba Cloud Global Summit 2025」在新加坡成功举办,在阿里云服务新加坡的十周年的程碑时刻,集中展示最新的AI及云产品与服务,助力全球企业拥抱新一轮科技浪潮。 飞天企业版(Apsara Stack)作为阿里云为政企客户构建的资源和云管完全独立的企业级云平台,在本次大会亮相,并首次展示了面向海外市场的三大解决方案:主权云、AI云与云迁移方案。 此次发布标志着阿里云在亚太地区深化技术赋能、推动数字主权建设与人工智能创新的重要战略布局,吸引了全球政企代表、技术专家与行业领袖的关注。
1177 0

热门文章

最新文章