`

学习scala笔记--12 为实例 混入 trait

 
阅读更多

 

 

 

为实例 混入 trait

 

创建对象时  使用 with  混入

 

 

scala> trait Logger {

     | def log(log:String){}

     | }

defined trait Logger

 

 

 

scala> trait HelloLogger extends Logger {

     |  override def log(log:String){ println("---hello---"+log)}

     | }

defined trait HelloLogger

 

scala> 

 

scala> trait HiLogger extends Logger {

     | override def log(log:String){println("---hi---"+log)}

     | }

defined trait HiLogger

 

scala> 

 

scala> class  Person extends Logger{

     | def sayHello(name:String){ log(name)}

     | }

defined class Person

 

scala> 

 

scala> val p1 = new Person

p1: Person = Person@74106c6c

 

scala> p1.sayHello("hello")

 

scala> val p2 = new Person with HelloLogger

p2: Person with HelloLogger = $anon$1@15d1c3ac

 

scala> p2.sayHello("hello")

---hello---hello

 

scala> val p3 = new Person with HiLogger

p3: Person with HiLogger = $anon$1@6a6974b9

 

scala> p3.sayHello("hello")

---hi---hello

 

 

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

分享到:
评论

相关推荐

    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-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-parser-combinators_2.12-1.1.0-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-compiler-2.11.8-sources.jar; 赠送Maven依赖信息文件:scala-compiler-2.11.8.pom; 包含翻译后...

    scala-intellij-bin-2023.1.15.zip

    "scala-intellij-bin-2023.1.15.zip" 是一个包含IntelliJ IDEA针对Scala开发的特定版本的二进制发行包。 这个压缩包很可能包含了以下内容: 1. **IntelliJ IDEA安装程序**:这是主应用程序,允许用户在本地计算机...

    scala-intellij-bin-2016.3.9

    "scala-intellij-bin-2016.3.9"是针对Scala语言的一个特定版本的IntelliJ IDEA插件,该版本为2016.3.9。这个插件是专门为Scala开发者设计的,旨在提高他们在IntelliJ IDEA中的开发体验。 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_2.11-1.0.4-javadoc.jar; 赠送源代码:scala-parser-combinators_2.11-1.0.4-sources.jar; 包含翻译后的API...

    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-java8-compat_2.11-0.7.0-sources.jar; 赠送Maven依赖信息文件:scala-java8-...

    scala-SDK-4.7.0-vfinal-2.12-linux.gtk.x86_64.tar.gz

    scala-SDK-4.7.0-vfinal-2.12-linux.gtk.x86_64.tar.gz scala-SDK-4.7.0-vfinal-2.12-linux.gtk.x86_64.tar.gz

    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-sources.jar; 赠送Maven依赖信息文件:scala-compiler-2.11.12.pom; 包含...

    scala-intellij-bin-2020.2.3.zip

    - **类与对象**:Scala中的类和对象是统一的,可以创建无实例的静态类(名为对象)。 - **特质(Traits)**:提供了一种实现多重继承的机制。 - **函数式编程**:Scala支持lambda表达式和不可变数据结构,鼓励...

    scala资源 scala-SDK-4.7.0-vfinal-2.12-li gz文件

    标题中提到的"scala-SDK-4.7.0-vfinal-2.12-li"指的是Scala语言的一个特定版本的软件开发工具包(SDK)。该版本为4.7.0,这可能是Scala官方发布的稳定版,包含了一整套用于开发Scala应用程序的工具和库。而"vfinal...

    scala-intellij-bin-2021.1.22.zip

    "scala-intellij-bin-2021.1.22.zip" 是一个包含IntelliJ IDEA的Scala插件的压缩包,版本号为2021.1.22,适用于IntelliJ IDEA的2021.1版本。 Scala插件是IntelliJ IDEA为了提升Scala开发体验而设计的,它提供了丰富...

    scala-intellij-bin-0.41

    "scala-intellij-bin-0.41"是专门为IntelliJ IDEA设计的一个Scala插件,版本号为0.41,用于增强IDE对Scala语言的支持。 这个插件的安装和使用对于Scala开发者至关重要,因为它可以提供以下关键功能: 1. 语法高亮...

    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-java8-compat_2.11-0.7.0-sources.jar; 赠送Maven依赖信息文件:scala-java8-...

    scala-ide-plugin-eclipse

    scala eclipse插件.对应scala版本:2.10--2.11,对应eclipes版本:4.4--...update site:http://download.scala-ide.org/sdk/lithium/e44/scala211/stable/site 下载地址:http://scala-ide.org/download/current.html

    scala-intellij-bin-2018.3.2.zip

    scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!scala-intellij-bin-2018.3.2.zip插件,亲测可用!!!

    scala-intellij-bin-2020.2.23.zip

    这个压缩包“scala-intellij-bin-2020.2.23.zip”是为IntelliJ IDEA设计的一个特定版本的Scala插件,适用于2020.2.23更新。IntelliJ IDEA是一款广受欢迎的集成开发环境(IDE),尤其在Java和相关技术社区中应用广泛...

    scala-intellij-bin-2020.1.27.zip

    "scala-intellij-bin-2020.1.27.zip" 文件很可能是IntelliJ IDEA的一个特定版本,专门为Scala开发定制,包含了必要的Scala插件和工具,使得开发者可以在IDEA中流畅地编写和调试Scala代码。 在描述中提到了"可伸缩的...

    scala-library-2.11.8-API文档-中文版.zip

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

    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-sources.jar; 赠送Maven依赖信息文件:scala-compiler-2.12.7.pom; 包含翻译后...

Global site tag (gtag.js) - Google Analytics