请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于委托实例化有点不清楚

视频中老师说委托实例化的时候不需要用new,直接用另一个类的实例化对象来调用其内部的方法就行,也不用小括号649b955700011b9014370486.jpg

但是我在网上查的时候,网上对于委托的方法,都是用的new关键字来实例化的649b95ab0001adcb14492303.jpg

这是因为一个可以直接调用,另一个需要实例化后才能调用内部方法的原因么?是不是用不用new关键字都可以?

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

1回答

阿莱克斯刘 2023-08-18 05:09:41
同学你好,你的问题提得很好,课程中说的是不需要new就可以完成委托,而不是不可以实例化。这是为什么呢,因为课程一直在强调的是,委托是一个指向某个(组)内存方法地址的类型。在你举的例子中我们可以看到,在使用new来初始化委托对象以后,还需要在构造方法的参数中传递被委托方法名称,其实这就是委托的指向。也就是说,委托类型的本质就是一个pointer、是一个指针,一个指向被委托方法的类型而已。如果你学过c++,了解指针pointer,就会知道一个pointer可以指向任意同类型的变量内存地址而不需要new来实例化。所以,在我们的课程中我直接让委托指向被委托方法,就不需要实例化了。请注意,课程所给出的委托使用方案是围绕着业务所展开的,而这也是实际工作中真正会使用到的方案,至于网上的讲解,不能说他们错,但在实际工作中解决不了任何问题,所以请同学牢记课程中的委托业务和代码逻辑。委托确实不好掌握,很多人学了委托只是背下了语法和定义,到真正用的时候根本就不会使用,所以我们一定要结合业务才能真正理解委托的用法。请多研究几遍本节课的代码和业务,加深印象。
1 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信