成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在Scala中定義final成員

開發(fā) 后端
本文節(jié)選自Martin Odersky,Lex Spoon和Bill Venners所著,Regular翻譯的《Programming in Scala》的第十章。Scala是一種針對 JVM 將函數(shù)和面向?qū)ο蠹夹g(shù)組合在一起的編程語言。

設(shè)計一個繼承層級的某些時候,你想要確保成員不被子類重載。Scala里和Java里一樣,通過添加final修飾符給成員來做到。例如,你可以在ArrayElement的demo方法前放一個final修飾符,如代碼10.7中展示的那樣。

  1. class ArrayElement extends Element {  
  2.  final override def demo() {  
  3.   println("ArrayElement's implementation invoked")  
  4.  }  
  5. }  

代碼 10.7 聲明final方法

51CTO編輯推薦:Scala編程語言專題

有了這個版本的ArrayElement,嘗試在它的子類,LineElement,重載demo方法,將編譯不過:

  1. elem.scala:18: error: error overriding method demo  
  2. in class ArrayElement of type ()Unit;  
  3. method demo cannot override final member  
  4. override def demo() {  
  5. ˆ  
你或許還多次想確保整個類都沒有子類。要做到這點只要簡單地通過在類的聲明上添加final修飾符把整個類聲明為final即可。如,代碼10.8展示了如何聲明ArrayElement為final:

  1. final class ArrayElement extends Element {  
  2.  override def demo() {  
  3.   println("ArrayElement's implementation invoked")  
  4.  }  
  5. }  
代碼 10.8 聲明final類

有了這個版本的ArrayElement,任何定義子類的嘗試都將失敗:

  1. elem.scala: 18: error: illegal inheritance from final class 
  2. ArrayElement  
  3. class LineElement extends ArrayElement {  
  4. ˆ  

我們現(xiàn)在將去掉final修飾符和demo方法,并回到早先實現(xiàn)的Element家族。我們將把我們本章剩余部分的注意力集中在完成布局庫的工作版本上。

【相關(guān)閱讀】

  1. Scala程序中如何實現(xiàn)多態(tài)和動態(tài)綁定
  2. Scala學(xué)習(xí):調(diào)用超類構(gòu)造器和override修飾符的使用
  3. Scala:重載方法和字段及定義參數(shù)化字段
  4. Scala程序中的擴展類
  5. 在Scala中定義無參數(shù)方法

責(zé)任編輯:book05 來源: Artima
相關(guān)推薦

2009-07-22 07:53:00

Scala無參數(shù)方法

2009-07-21 17:21:57

Scala定義函數(shù)

2010-01-18 17:57:02

靜態(tài)數(shù)據(jù)

2009-11-16 17:04:46

Inside Scal

2023-11-03 12:33:20

GoGORM

2024-12-13 09:26:35

2009-12-11 10:42:00

Scala講座類定義構(gòu)造函數(shù)

2009-07-22 09:22:20

Scala工廠對象

2009-08-03 18:26:18

C#定義接口成員

2023-04-03 07:08:28

C++函數(shù)模板

2023-06-30 17:56:31

Scala元組

2009-07-21 12:24:01

Scala先決條件添加字段

2009-07-20 16:56:51

Scala類的定義

2011-06-15 09:24:36

Qt Widget Model

2009-09-22 10:15:42

PersistentQScala

2009-07-22 07:53:00

Scala擴展類

2009-07-08 15:35:18

Case類Scala

2009-07-22 07:45:00

Scala代碼重復(fù)

2009-09-22 09:59:40

QueueCollecScala

2012-06-08 09:28:15

EclipseScalaAndroid
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 黄 色 毛片免费 | 男女激情网站免费 | 黄色av观看 | 在线成人免费视频 | 国产欧美在线播放 | 久久中文字幕一区 | 久热免费在线 | 黄色91在线| 免费在线h视频 | 国产成人精品免高潮在线观看 | 国产精品海角社区在线观看 | 天天操 天天操 | 亚州成人| 国产99久久精品一区二区300 | 色综合天天综合网国产成人网 | 伊人春色在线观看 | 欧美一区二区三区大片 | 亚洲入口 | 在线免费视频一区 | 久久久激情 | 欧美日韩亚洲一区二区 | 午夜小视频在线观看 | 在线激情视频 | 欧美在线观看网站 | 精品一区二区三区日本 | 日韩欧美一区二区三区 | 免费黄色日本 | 午夜影院网站 | 久久久国产一区二区三区四区小说 | 特级做a爰片毛片免费看108 | 国产精品自拍视频 | 国产成人精品一区二三区在线观看 | 精品国产欧美一区二区三区不卡 | 国产精品久久久久久吹潮 | 成人在线免费观看视频 | 亚洲日韩中文字幕一区 | 亚洲成人在线网 | 久久新| 国产精品大片 | 日韩中文字幕在线 | 一级毛片,一级毛片 |