面向Java开发人员的Scala指南 - 类操作 - 编程入门网
面向Java开发人员的Scala指南 - 类操作时间:2011-01-30 IBM Ted NewardJava™ 开发人员可以将对象作为理解 Scala 的出发点。本文是面向 Java 开发人员的 Scala 指南 系列 的第二期,作者 Ted Neward 遵循对一种语言进行评价的基本前提:一种语言的威力可以直接通过它集成新功能的能力衡量,在本文中就是指对复数的支持。跟随本文,您将了解在 Scala 中与类的定义和使用有关的一些有趣特性。 在上一期 文章 中,您只是稍微了解了一些 Scala 语法,这些是运行 Scala 程序和了解其简单特性的最基本要求。通过上一篇文章中的 Hello World 和 Timer 示例程序,您了解了 Scala 的 Application 类、方法定义和匿名函数的语法,还稍微了解了 Array[] 和一些类型推断方面的知识。Scala 还提供了很多其他特性,本文将研究 Scala 编程中的一些较复杂方面。 Scala 的函数编程特性非常引人注目,但这并非 Java 开发人员应该对这门语言感兴趣的惟一原因。实际上,Scala 融合了函数概念和面向对象概念。为了让 Java 和 Scala 程序员感到得心应手,可以了解一下 Scala 的对象特性,看看它们是如何在语言方面与 Java 对应的。记住,其中的一些特性并不是直接对应,或者说,在某些情况下,“对应” 更像是一种类比,而不是直接的对应。不过,遇到重要区别时,我会指出来。 Scala 和 Java 一样使用类 我们不对 Scala 支持的类特性作冗长而抽象的讨论,而是着眼于一个类的定义,这个类可用于为 Scala 平台引入对有理数的支持(主要借鉴自 “Scala By Example”,参见 参考资料): 清单 1. rational.scala
从词汇上看,清单 1 的整体结构与 Java 代码类似,但是,这里显然还有一些新的元素。在详细讨论这个定义之前,先看一段使用这个新 Rational 类的代码: 清单 2. RunRational
面向Java开发人员的Scala指南 - 类操作(2)时间:2011-01-30 IBM Ted Neward清单 2 中的内容平淡无奇:先创建两个有理数,然后再创建两个 Rational,作为前面两个有理数的和与差,最后将这几个数回传到控制台上(注意, Console.println() 来自 Scala 核心库,位于 scala.* 中,它被隐式地导入每个 Scala 程序中,就像 Java 编程中的 java.lang 一样)。 用多少种方法构造类? 现在,回顾一下 Rational 类定义 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |