1 / 25
文档名称:

The Scala Programming Language培训课件.ppt

格式:ppt   大小:329KB   页数:25页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

The Scala Programming Language培训课件.ppt

上传人:412702457 2019/5/25 文件大小:329 KB

下载得到文件列表

The Scala Programming Language培训课件.ppt

相关文档

文档介绍

文档介绍:TheScalaProgrammingLanguagepresentedbyDonnaMalayeriWhyanewlanguage?ponentsoftwareTwohypotheses:ponentsoftwareshouldbescalableThesameconceptsdescribesmallandlargepartsRatherthanaddinglotsofprimitives,position,FeaturesofScalaScalaisbothfunctionalandobject-orientedeveryvalueisanobjecteveryfunctionisavalue--includingmethodsScalaisstaticallytypedincludesalocaltypeinferencesystem: : Pairp=newPair<Integer,String>(1,"Scala"); inScala: valp=newMyPair(1,"scala");MorefeaturesSupportslightweightsyntaxforanonymousfunctions,higher-orderfunctions,nestedfunctions,curryingML-stylepatternmatchingIntegrationwithXMLcanwriteXMLdirectlyinScalaprogramcanconvertXMLDTDintoScalaclassdefinitionsSupportforregularexpressionpatternsOtherfeaturesAllowsdefiningnewcontrolstructureswithoutusingmacros,andwhilemaintainingstatictypingAnyfunctioncanbeusedasaninfixorpostfixoperatorCandefinemethodsnamed+,<=or::,theactualdefparametersarenotevaluatedandano-argumentfunctionispassedWhileloopexampleobjectTargetTest1withApplication{defloopWhile(defcond:Boolean)(defbody:Unit):Unit=if(cond){body;loopWhile(cond)(body);}vari=10;loopWhile(i>0){(i);i=i-1}}DefineloopWhilemethodUseitwithnicesyntaxScalaclasshierarchyScalaobjectsystemClass-poundtypes,andviewsallowformoreflexibilityClassesandObjectstraitNat;objectZeroextendsNat{defisZero:boolean=true;defpred:Nat= thrownewError("");}(n:Nat)extendsNat{defisZero:boolean=false;defpred:Nat=n;}