老师关于运行时创建对象有个小疑问

老师关于运行时创建对象有个小疑问

通过new的方式创建对象,不也是运行时才真正创建嘛,只不过写死在代码中

而reflect 是运行时在创建,这个我理解

难道new的方式创建对象,不是运行时创建嘛

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小脸 2021-11-27 16:41:59

同学你好,new对象,也就是创建对象时,也是需要在运行时才可以创建的,即:加载类--》创建对象

祝学习愉快~

  • 提问者 眼睛眯起来 #1

    老师那反射,不也是运行时才创建嘛,两者有啥区别呢

    2021-11-27 21:25:24
  • 好帮手慕小尤 回复 提问者 眼睛眯起来 #2

    同学你好,使用new关键字创建对象是静态的,而反射是动态的

        反射是可以把一个类,类的成员(函数,属性)当成一个对象来操作;也就是说:类,类的成员,我们在运行的时候还可以动态地去操作他们,动态的创建对象,获取类的方法和属性等

        并且使用反射更多的是为了可以灵活的编程,从而增加程序的灵活性,简洁代码,提高代码的复用率;

    而直接new对象是写死在程序中的,达不到灵活调用

        在前面的课程中老师也有讲到反射跟new对象的区别哦,同学可以回顾下

    https://class.imooc.com/lesson/1399#mid=34725

    祝学习愉快!

    2021-11-28 09:59:55
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师