在Java中显示创建对象的方式有多少种?
答:在Java中有四种显式创建对象的方式:
(1)最简单和直接的方式当然就是使用new语句创建对象。
(2)使用反射手段创建对象,调用java.lang.Class或者java.lang.reflect.Constructor的
newInstance()实例方法。
(3)调用对象的clone()方法。
(4)运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。
但是不管采用何种方式来创建对象,Java虚拟机创建一个对象都包含以下步骤:
首先,给对象分配内存。
其次,将对象的实例变量自动初始化为其变量类型的默认值。
最后,初始化对象,给实例变量赋予正确的初始值。
对于以上的步骤中的最后一步初始化工作则有3种不同的方式来初始化对象,到底采用哪一
种初始化方式取决于创建对象的方式。
* 如果对象是通过克隆方法创建的,那么Java虚拟机把原来被克隆对象的实例变量的值拷
贝到新的对象种。
* 如果对象是通过ObjectInputStream类的readObject()创建的,那么Java虚拟机通过从
输入流种读入的序列化数据来初始化那些非暂时性(non-transient)的实例变量。
* 在其他情况下,如果实例变量在声明时被显示初始化了,那么就把初始化值赋予实例变
量,接着在执行构造方法。
分享到:
相关推荐
java 面试java 面试java 面试java 面试java 面试
java面试问题集锦
JAVA面试问题,自己和别人总结JAVA面试问题,自己和别人总结
这份资源是一份包含1000+道Java面试题的整理版,旨在帮助广大Java开发者更好地准备面试,提升面试成功率。内容涵盖了Java的基础知识、高级特性、常见问题等多个方面,每个问题都附带了详细的答案解析,有助于读者...
JAVA面试资料JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA面试资料 JAVA...
面试题包含了不同技术层面的面试问题,同时也能对一些没有面试开发经验的小白给予不可估量的包装, 让你的薪水绝对翻倍, 本人亲试有效.Java面试题84集、java面试专属及面试必问课程,所有的面试题有视屏讲解, 解答方案....
JAVA面试题JAVA面试题JAVA面试题JAVA面试题JAVA面试题JAVA面试题JAVA面试题JAVA面试题JAVA面试题
java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题java面试题...
java面试问题小集 收集了一些面试题目
java面试题集合java面试题集合java面试题集合java面试题集合java面试题集合java面试题集合
常见Java面试问题,里面涵盖了基础的Java面试问题,有助于准备面试
java对日外包面试题
java面试题目java面试题目java面试题目java面试题目java面试题目java面试题目
java面试宝典2017版,各种java面试题汇总 java面试宝典2017版,各种java面试题汇总 java面试宝典2017版,各种java面试题汇总
日本公司java面试问题集。非常实用。适用于日企、软件外包、赴日软件开发。(日文)
java面试宝典2018版java面试宝典2018版java面试宝典2018版java面试宝典2018版
Java面试题
java面试问题大全,帮您成功!!!!!!!!!!!!