【第22期】观点:IT 行业加班,到底有没有价值?

scala中 toString和apply的区别

原创 2016年08月29日 21:19:13
class legotime{
  def apply = "this is apply method"

  /**
    * 1 :scala中的toString和java中的toSting 一样------所有的对象都有這个方法,
    * 因为toString 是 java中object的方法,而全部的类都是继承于Object這个类
    * 2: java中的toString是
    * public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
      }
    *  所以toString方法默认得到类型名字+hashCode
    *  如果要不同的结果,那么就应该 override 這个方法
    *
    *  3:toString 方法一定是返回的是String类型
    */
  override def toString = "this is toString method"
}

object applyAndToString {
  def main(args: Array[String]) {
    val lego1 = new legotime
    println(lego1)//this is toString method
    val lego2 = new legotime()
    println(lego2)//this is toString method

    //在测试下面代码的时候 legotime的apply方法先不加括号
    //val lego3 = new legotime()()
    //println(lego3)//发现报错,提示 : legotime does not take parameters

    /**
      *  当给apply方法加上括号的时候就不会报错
      */
    val lego4 = new legotime()()
    println(lego4)//this is apply method




  }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

SCALA

Scala学习笔记 Scala介绍 Scala与Java的关系 Scala是基于Java虚拟机,也就是JVM的一门编程语言。所有Scala的代码,都需要经过编译为字节码,然后交由Java虚拟机来运行...

Case Classes and Pattern Matching(分支类和模式匹配)

Case Classes and Pattern Matching(分支类和模式匹配)      本章介绍分支类和模式匹配,这两个孪生兄弟可以帮你处理那些常规的,没有封装的数据结构。这两种构造在处理树形递归数据的时候非常有用。 如果你早先做过函数语言编程, 那模式匹配你可能比较熟悉,但分支类你可能就比较陌生了。分支类是scala在允许模式匹配支持对象的一种方法,这种方法可以节省很多废话。通常情况 下,你只需要增加一个case的关键字在每个分支类上就可以让这些分支类支持模式匹配了。      本章从一个简单的分支类和模式匹配的例子讲起,然后就贯穿各种各样的模式,讲解

《小白兔到大黑牛》第十六篇Scala学习总结

Scala总结===概述scala是一门以Java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。scala是纯粹的面向对象的语言。java虽然是面向对象...
  • Dtyet
  • Dtyet
  • 2017-08-08 10:32
  • 19

scala笔记小结

来自 fair-jm.iteye.com 转截请注明出处   摘录的一些笔记 来源挺杂的 主要是coursera上 FP principle in Scala课程的笔记   内也许有诸多错误 欢迎指正     避免状态改变   函数是一等公民   求值策略 <

Scala中apply方法以及函数返回有无unit的区别

class ApplyTest{ //伴生类 def apply():Unit={ println(“I am into Scala so much!”) }def Try...

JDK版本新特性

JDK1.5<span style="font-size: 16.0pt; font-family: 宋体; color: #33996

Scala总结

Scala总结===概述 scala是一门以java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。scala是纯粹的面向对象的语言。java虽然是面向对...

scala学习1- 一些概念

下载和安装 linux简单一些,可以直接 yum install scala就好了 ,windows的话,可以到下载的链接 http://www.scala-lang.org/download/  我下载的是scala-2.11.6 。对应是一个 msi文件(速度有点小慢啊)。下载完以后直接安装,安装完成以后,对应的bin目录会自动添加到path路径下。 然后就可以直接在命令行进入 RE

Scala容器库(Scala’s Collections Library)

随笔 - 29  文章 - 381  评论 - 95 [转]Scala容器库(Scala’s Collections Library) 原文...

Effective Scala

  http://twitter.github.io/scala_school/zh_cn/index.html     Scala是Twitter使用的主要应用编程语言之一。很多我们的基础架构都是用scala写的,我们也有一些大的库</a
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)