`

学习scala笔记--14 trait 中混合使用 抽象方法 和 具体方法

 
阅读更多

 

 

 

trait 中覆盖抽象方法    abstract override 

 

 

 

scala> trait Logger { def log(log:String)}

defined trait Logger

 

scala> trait aLogger{ abstract override def log(log:String){ println("---a---"+log);super.log(log)}

     | }

<console>:11: error: value log is not a member of AnyRef

       trait aLogger{ abstract override def log(log:String){ println("---a---"+log);super.log(log)}

                                                                                          ^

 

scala> trait aLogger extends Logger{ abstract override def log(log:String) { println("--a--"+log);super.log(log)}}

defined trait aLogger

 

 

 

----------------------------------

 

 

trait 中混合使用 抽象方法 和 具体方法

可以用来实现  模板方法 模式

 

scala> :paste

// Entering paste mode (ctrl-D to finish)

 

trait Valid {

 def getName:String

 def valid:Boolean = {

   if("tomcat"==getName)

      true

   else

      false

 }

}

 

// Exiting paste mode, now interpreting.

 

defined trait Valid

 

 

 

scala> class C1  extends Valid {

     | def getName:String ={ "xcatlina"}

     | }

defined class C1

 

scala> 

 

scala> 

 

scala> var a = new C1

a: C1 = C1@3df681cc

 

scala> a.valid

res1: Boolean = false

 

scala> class C2  extends Valid {  def getName:String ={ "tomcat"}  }

defined class C2

 

scala> var b = new C2

b: C2 = C2@139da216

 

scala> b.valid

res2: Boolean = true

 

分享到:
评论

相关推荐

    scala-parser-combinators-2.11-1.0.4-API文档-中文版.zip

    赠送jar包:scala-parser-combinators_2.11-1.0.4.jar; 赠送原API文档:scala-parser-combinators_2.11-1.0.4-javadoc.jar; 赠送源代码:scala-parser-combinators_2.11-1.0.4-sources.jar; 赠送Maven依赖信息...

    scala-compiler-2.11.8-API文档-中英对照版.zip

    赠送jar包:scala-compiler-2.11.8.jar; 赠送原API文档:scala-compiler-2.11.8-javadoc.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    scala-2.12.14.zip&scala-2.12.11.tgz Linux版本压缩包.rar

    在压缩包中,我们只看到了"scala-2.12.14"这一条子文件名,这可能是指Scala的二进制分发包,其中包括Scala解释器、编译器和其他工具。安装这个版本的Scala通常涉及以下步骤: 1. 解压缩文件:使用`tar -zxvf scala-...

    scala-parser-combinators_2.11-1.0.4-API文档-中英对照版.zip

    赠送jar包:scala-parser-combinators_2.11-1.0.4.jar; 赠送原API文档:scala-parser-combinators_...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    scala-intellij-bin-2016.3.9

    3. **Scala文档**:可能包含Scala语言的官方文档,帮助开发者理解和学习语言特性。 4. **测试框架支持**:Scala插件通常会集成Scala的测试框架,如ScalaTest或Specs2,使得在IDE内创建和运行测试变得方便。 5. **...

    scala-compiler-2.11.12-API文档-中文版.zip

    赠送jar包:scala-compiler-2.11.12.jar; 赠送原API文档:scala-compiler-2.11.12-javadoc.jar; 赠送源代码:scala-compiler-2.11.12-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-intellij-bin-2021.3.6.zip

    总的来说,"scala-intellij-bin-2021.3.6.zip"压缩包是Scala开发者在IntelliJ IDEA中提升生产力的关键工具,它通过丰富的功能和对Scala语言特性的深度理解,使得开发过程更为流畅和高效。无论是初学者还是经验丰富的...

    scala-java8-compat_2.11-0.7.0-API文档-中文版.zip

    赠送jar包:scala-java8-compat_2.11-0.7.0.jar; 赠送原API文档:scala-java8-compat_2.11-0.7.0-javadoc.jar; 赠送源代码:scala-java...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-intellij-bin-0.41

    7. Scala文档查看:插件还可以显示Scala库的API文档,便于查阅和学习。 8. 构建工具集成:与SBT(Scala Build Tool)紧密集成,允许用户直接在IDE中管理项目构建和依赖。 9. 支持ScalaTest和ScalaCheck:方便进行...

    scala-reflect-2.12.14-API文档-中文版.zip

    赠送jar包:scala-reflect-2.12.14.jar; 赠送原API文档:scala-reflect-2.12.14-javadoc.jar; 赠送源代码:scala-reflect-2.12.14-sources.jar; 赠送Maven依赖信息文件:scala-reflect-2.12.14.pom; 包含翻译后...

    mongo-scala-drive的使用demo

    在 Scala 中与 MongoDB 进行交互,通常我们会使用 `mongo-scala-driver`,而不是 `mongo-java-driver`,因为 Scala 驱动提供了更符合 Scala 语言特性的 API 设计。本示例将详细介绍如何使用 `mongo-scala-driver` ...

    scala-xml_2.12-1.0.6-API文档-中文版.zip

    赠送jar包:scala-xml_2.12-1.0.6.jar; 赠送原API文档:scala-xml_2.12-1.0.6-javadoc.jar; 赠送源代码:scala-xml_2.12-1.0.6-sources...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-compiler-2.11.0-API文档-中文版.zip

    赠送jar包:scala-compiler-2.11.0.jar; 赠送原API文档:scala-compiler-2.11.0-javadoc.jar; 赠送源代码:scala-compiler-2.11.0-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-compiler-2.12.7-API文档-中英对照版.zip

    赠送jar包:scala-compiler-2.12.7.jar; 赠送原API文档:scala-compiler-2.12.7-javadoc.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    scala-compiler-2.12.7-API文档-中文版.zip

    赠送jar包:scala-compiler-2.12.7.jar; 赠送原API文档:scala-compiler-2.12.7-javadoc.jar; 赠送源代码:scala-compiler-2.12.7-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-reflect-2.12.14-API文档-中英对照版.zip

    赠送jar包:scala-reflect-2.12.14.jar; 赠送原API文档:scala-reflect-2.12.14-javadoc.jar; 赠送源代码:scala-reflect-2.12.14-sources.jar; 赠送Maven依赖信息文件:scala-reflect-2.12.14.pom; 包含翻译后...

    scala-reflect-2.11.8-API文档-中英对照版.zip

    赠送jar包:scala-reflect-2.11.8.jar; 赠送原API文档:scala-reflect-2.11.8-javadoc.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    scala-intellij-bin-2020.3.14.zip

    "scala-intellij-bin-2020.3.14.zip" 文件是一个包含了IntelliJ IDEA版本为2020.3.14的Scala插件的压缩包。 1. **IntelliJ IDEA**: IntelliJ IDEA 是由JetBrains公司开发的一款高效且功能丰富的IDE,它提供了代码...

    scala-parser-combinators_2.12-1.1.0-API文档-中文版.zip

    赠送jar包:scala-parser-combinators_2.12-1.1.0.jar; 赠送原API文档:scala-parser-combinators_2.12-1.1.0-javadoc.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    scala-intellij-bin-2017.3.11.zip

    - **面向对象编程**:提供了类、特质(trait)和继承,同时支持多态和抽象类型。 - ** Actors模型**:Scala内置对Akka Actors的支持,用于构建分布式、反应式和容错的应用程序。 2. **IntelliJ IDEA Scala插件**...

Global site tag (gtag.js) - Google Analytics