【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节(2)
【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节(2)
Spark亚太研究院 发表于3年前
【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节(2)
  • 发表于 3年前
  • 阅读 149
  • 收藏 0
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

3,动手实战Scala中的抽象类

 

抽象类的定义需要使用abstract关键字:

上面的代码定义并实现了抽象方法,需要注意的是我们把直接运行的代码放在了App这个trait的子类中,关于App内部帮助我们实现了main方法并管理了工程师写的代码;

下面看一下抽象类中未被初始化的变量的使用:

4,动手实战Scala中的trait

  

trait类似于Java 8中可以带default method的接口。

trait中可以带有实现的方法,也可以带有抽象方法,使用trait的方式是with而混入类中。

下面先看trait的一个实例:

注意,我们这里使用trait的使用使用的是extends,这是因为ConcreteLogger没有继承其它的类或者trait的缘故;

子trait可以覆写实现父trait的方法:

如果子trait在如果覆写父trait中已经实现的方法就必须使用override关键字:

下面展示一下在对象中混入trait:

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 64
博文 73
码字总数 35236
×
Spark亚太研究院
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: