ITPub博客

首页 > 应用开发 > Java > Scala的apply

Scala的apply

原创 Java 作者:541732025 时间:2015-11-16 17:58:17 0 删除 编辑

点击(此处)折叠或打开

  1. class ApplyTest{
  2.   def apply() = println("I am into Spark so much!!!")
  3.    
  4.   def haveATry{
  5.     println("Have a try on apply!")
  6.   }
  7. }

点击(此处)折叠或打开

  1. object ApplyTest{
  2.   def apply() = {
  3.     println("I am into Scala so much!!!")
  4.     new ApplyTest
  5.   }
  6. }

点击(此处)折叠或打开

  1. object ApplyOperation {
  2.   def main(args: Array[String]) {
  3.     val array = Array(1,2,3,4,5)
  4.     val a = ApplyTest() //这里并没有new,然后确实返回了类的实例
  5.     a.haveATry
  6.   }
  7. }
结果:
I am into Scala so much!!!
Have a try on apply!

在一个类的伴生对象里面,实现apply方法,在这里面可以创建类的实例。譬如val a = Array(1, 2, 3)就是使用了Array的apply方法。

同样,在class里面也可以使用apply方法:

点击(此处)折叠或打开

  1. object ApplyOperation {
  2.   def main(args: Array[String]) {
  3.      val a = new ApplyTest
  4.      a.haveATry
  5.      println(a())  //调用class的apply方法
  6.   }
  7. }
结果:
Have a try on apply!
I am into Spark so much!!!
()

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28912557/viewspace-1839759/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Scala的继承
请登录后发表评论 登录
全部评论

注册时间:2013-05-23

  • 博文量
    127
  • 访问量
    515720