Java面试题:Java创建对象的几种方式

2020年12月18日09:20:25 评论 208

【选自BD面试题】

题面解析:本题也是在大型企业的面试中最常问的问题之一,主要考查创建对象的方式。下面我们一起来看看Java创建对象的几种方式吧。

Java面试题:Java创建对象的几种方式

解析过程:共有四种创建对象的方法。

一、通过new语句实例化一个对象

使用new关键字创建对象是最常见的一种方式,但是使用new创建对象会增加耦合度。在使用new时需要先查看new后面的类型,然后再决定分配多大的内存空间;接着可以通过调用构造函数,来对对象的各个域进行填充;根据构造方法的返回值进行对象的创建,最后把引用地址传递给外部。例如:

package test;
/**使用new关键字创建对象*/
public class NewClass
{
	public static void main(String[] args)
	{
		Hello h = new Hello();
		h.sayWorld();
	}
}

二、通过反射机制创建对象

使用反射机制的Class类的newInstance()方法。

三、通过clone()方法创建一个对象

在使用clone()方法时,不会调用构造函数,而是需要有一个分配了内存的源对象。在创建新对象时,首先应该分配一个和源对象一样大的内存空间。

四、通过反序列化的方式创建对象

序列化就是把对象通过流的方式存储到文件里面,那么反序列化就是把字节内容读出来并还原成Java对象,这里还原的过程就是反序列化。在使用反序列化时也不会调用构造方法。

Java大学
  • 本文由 发表于 2020年12月18日09:20:25
  • 转载请务必保留本文链接:https://www.javadx.com/157.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: