码迷,mamicode.com
首页 > 其他好文 > 详细

第74讲:从Spark源码的角度思考Scala中的模式匹配

时间:2015-08-01 14:09:11      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:

今天跟随王老师学习了从源码角度去分析scala中的模式匹配的功能。让我们看看源码中的这一段模式匹配:

技术分享

从代码中我们可以看到,case RegisterWorker(id,workerHost,........){}这里为模式匹配,而我们的模式匹配类RegisterWorker之前就已定义好,如下图:

技术分享

我们可以看到,我们的模式匹配类是已经定义好的,当我们的master接收到worker发来的消息时,进行模式匹配:

技术分享

这里还有一个知识点,我们可以发现,当我们进行模式匹配时,我们并没有使用new方法新建一个实例,而是直接使用RegisterWorker(id,.....)。而这里,我们使用的就是类的伴生对像里的apply方法。当进行模式匹配时,还会用到unapply方法来解析实例传过来的内容。

 

 

 

 

分享下更多的scala资源吧:

百度云盘:http://pan.baidu.com/s/1gd7133t

微云云盘:http://share.weiyun.com/047efd6cc76d6c0cb21605cfaa88c416

360云盘: http://yunpan.cn/cQN9gvcKXe26M (提取码:13cd)

信息来源于 DT大数据梦工厂微信公众账号:DT_Spark

关注微信账号,获取更多关于scala学习内容

 

第74讲:从Spark源码的角度思考Scala中的模式匹配

标签:

原文地址:http://www.cnblogs.com/qingyuesama/p/4693991.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!