首页 > 其他 > 详细

一天一段scala代码(八)

时间:2015-02-15 18:08:55      阅读:288      评论:0      收藏:0      [点我收藏+]
一天一段scala代码(八)

       为了更好的驾驭spark,最近在学习scala语言特性,主要看《快学scala》,顺便把一些自己认为有用的代码记下来。


package examples


class Person8
{
    var name:String=""
    def this(name:String)
    {
      this()//一定要先调用主构造器.每个辅助构造器最终都会调用主构造器
      this.name=name
    }
    override def toString=
    {
       "name:"+name
    }
    def show=
    {
      println("Person:"+toString)
    }
}

class Employee(name:String,salary:Double) extends Person8(name:String) //只有主构造器能够调用超类的构造器
{
    override def toString=
    {
       "name:"+name+",salary:"+salary
    }
    
    override def show=
    {
      println("Employee:"+toString)
    }
    
  
}

object Example8 extends App{
  val t1 = new Person8("linger")
  println(t1)
  t1.show
  
  val t2 = new Employee("linger",15)
  println(t2)
  t2.show
  
  val t3:Person8 = t2   //这里跟c++不一样阿,c++必须是虚函数,才会呈现多态.scala里没有虚函数,所有函数只要被override了都会呈现多态
  println(t3)
  t3.show
}










输出:
name:linger
Person:name:linger
name:linger,salary:15.0
Employee:name:linger,salary:15.0
name:linger,salary:15.0
Employee:name:linger,salary:15.0

本文链接:http://blog.csdn.net/lingerlanlan/article/details/43836271
本文作者:linger



一天一段scala代码(八)

原文:http://blog.csdn.net/lingerlanlan/article/details/43836271

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!