java中创建对象的四种方式

1.new出一个对象

String s = new String(“abc”);

2.利用反射创建对象

利用反射的两种方式:

  1. 使用Class对象的newInstance()方法来创建Class对象对应类的实例。但是这种方法要求Class对象的对应类有默认构造器,而执行newInstance()方法时实际上利用默认构造器来创建该类的实例。
  2. 先使用Class对象获取指定的Constructor对象,在调用Construtor对象的newInstance()方法来创建该Class类对应类的实例,通过这种方式可以选择使用某个类的指定构造器来创建实例,有三步:
    (1)获取Class对象
    (2)利用Class对象的getConstrutor方法来获取指定的构造器
    (3)调用Construtor的newInstance方法来创建java对象。

3.利用clone创建对象

  1. Clone和Copy
  • Copy,copy后的cindyelf与tobby指向内存的同一个object。
Employee cindyelf=tobby;
  • Clone,得到tobby的精确拷贝,且两者相互不影响,这时会得到一个新的Employee对象,且与tobby有相同的属性值和方法。
Employee cindy=tobby.clone()
  1. Shallow Clone和Deep Clone
  • Shallow Clone
    Shallow Clone是某个对象实施Clone后简单执行域对域的copy,但是如果一个employee里的一个域hireDay不是基本类型变量,而是引用类型,经过Clone后,它与原始
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏日一凉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值