网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > JAVA > 其它技术 > 面向Java开发人员的Scala指南: 实现继承  

面向Java开发人员的Scala指南: 实现继承

2008-08-13  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

    Scala 对实现继承的支持与 Java™语言一样丰富 — 但 Scala 的继承带来了一些惊喜。这个月,Ted Neward 介绍了以 Scala 方式完成的多态,还介绍了混合函数与面向对象的语言风格,同时使您依然能够完美地映射到 Java 平台的继承模型。 网管联盟bitsCN@com

    近十几年来,面向对象语言设计的要素一直是继承的核心。不支持继承的语言(如 Visual Basic)被嘲讽是 “玩具语言” ,不适合真正的工作。与此同时,支持继承的语言所采用的支持方法五花八门,导致了许多争论。多重继承是否真的必不可少(就像 C++ 的创作者认定的那样),它是否不必要而丑陋的(就像 C# 和 Java 的创作者坚信的那样)?Ruby 和 Scala 是两种较新的语言,采取了多重继承的这种方法 — 正如我在上期介绍 Scala 的特征时所讨论的那样。 网管网www.bitscn.com

    与所有 杰出的语言一样,Scala 也支持实现继承。在 Java 语言中,单一实现继承模型允许您扩展基类,添加新方法和字段等。尽管存在某些句法变更,Scala 的实现继承依然类似于 Java 语言中的实现。不同的是 Scala 融合了对象和函数语言设计,这非常值得我们在本期文章中进行讨论。 网管bitscn_com

    普通 Scala 对象 网管下载dl.bitscn.com

    与本系列之前的文章类似,我将使用 Person 类作为起点,探索 Scala 的继承系统。清单 1 展示了 Person 的类定义: 网管有家www.bitscn.net

    清单 1. 嘿,我是人类 网管u家www.bitscn.net

清单 1. 嘿,我是人类 网管bitscn_com

// This is Scala
class Person(val firstName:String, val lastName:String, val age:Int)
{
  def toString = "[Person: firstName="+firstName+" lastName="+lastName+
                         " age="+age+"]"
}

    Person 是一个非常简单的 POSO(普通 Scala 对象,Plain Old Scala Object),具有三个只读字段。您可能会想起,要使这些字段可以读写,只需将主构造函数声明中的 val 更改为 var 即可 中国网管联盟bitsCN.com

    无论如何,使用 Person 类型也非常简单,如清单 2 所示:

网管u家u.bitsCN.com

    清单 2. PersonApp

网管网www.bitscn.com

// This is Scala
object PersonApp
{
  def main(args : Array[String]) : Unit =
  {
    val bindi = new Person("Tabinda", "Khan", 38)
    System.out.println(bindi)
  }
}
网管u家bitscn.net

    这算不上什么令人惊讶的代码,但给我们提供了一个起点。 网管网www_bitscn_com

网管u家bitscn.net

TAGs   指南   实现   继承   人员   开发   面向       Scala   语言   Person      
 上一篇:Java 6 RowSet 使用完全剖析   下一篇:Java实现Windows的dir命令
面向Java开发人员的Scala指南: 实现继承 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: