父类

abstract class Event(val name:String) {
var time:Long
var content:String
}

子类

private[spark] class BaseEvent(name: String) extends Event(name) {
var id: String = _
override var time: Long = _
override var content: String = _
//从构造器
def this(id:String,name:String,time:Long,content:String){
this(name)//主构造器
this.id = id
this.time = time
this.content = content
}
//重写toString
override def toString():String ={
id+","+name+","+time+","+content
} }

再子类

private[spark] class AlarmEvent(name: String) extends BaseEvent(name) {

  var event_type: String = _
var event_level: String = _
var event_src_ip: String = _
var event_src_port: String = _
var event_tar_ip: String = _
var event_tar_port: String = _
var event_src_server_name: String = _
var event_tar_server_name: String = _
var event_group_count: Long = _
var event_group_start_time: String = _
var event_group_end_time: String = _
var event_server_name: String = _ def this(id: String, name: String, time: Long, content: String) {
this(name)
this.id = id
this.time = time
this.content = content
}
//构造器的继承与重载
def this(id: String,
name: String,
time: Long,
content: String,
event_type: String,
event_level: String,
event_src_ip: String,
event_src_port: String,
event_tar_ip: String,
event_tar_port: String,
event_src_server_name: String,
event_tar_server_name: String
) {
this(name, id, time, content)
this.event_type = event_type
this.event_level = event_level
this.event_src_ip = event_src_ip
this.event_src_port = event_src_port
this.event_src_server_name = event_src_server_name
this.event_tar_ip = event_tar_ip
this.event_tar_port = event_tar_port
this.event_tar_server_name = event_tar_server_name
}
//重载
def this(id: String,
name: String,
time: Long,
content: String,
event_type: String,
event_level: String,
event_src_ip: String,
event_src_port: String,
event_tar_ip: String,
event_tar_port: String,
event_src_server_name: String,
event_tar_server_name: String,
event_group_count: Long,
event_group_start_time: String,
event_group_end_time: String,
event_server_name: String
) {
this(name, id, time, content, event_type, event_level,event_src_ip,event_src_port,event_tar_ip,event_tar_port,event_src_server_name,event_tar_server_name)
this.event_group_count=event_group_count
this.event_group_start_time=event_group_start_time
this.event_group_end_time=event_group_end_time
this.event_server_name=event_server_name
}
//toString的继承重载
override def toString():String= {
super.toString() +","+ event_type + "," + event_level + "," + event_src_ip + "," + event_src_port +","+ event_src_server_name + "," + event_tar_ip + "," + event_tar_port + "," + event_tar_server_name
} }

执行结果:

2,1,0,3,4,5,6,7,9,80,8,00

scala语言的父类继承和重载,toString的继承重载,靠super

子类中的构造器不能够super,报错

scala构造器实战的更多相关文章

  1. Scala 深入浅出实战经典 第81讲:Scala中List的构造是的类型约束逆变、协变、下界详解

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-97讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  2. Scala 深入浅出实战经典 第79讲:单例深入讲解及单例背后的链式表达式

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  3. Scala 深入浅出实战经典 第78讲:Type与Class实战详解

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载: 百度云盘:http://pan.baidu.com/s/1c0noOt ...

  4. Scala 深入浅出实战经典 第77讲:模式匹配下的提取器动手构造实战

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  5. Scala 深入浅出实战经典 第76讲:模式匹配下的赋值语句

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载: 百度云盘:http://pan.baidu.com/s/1c0noOt ...

  6. Scala 深入浅出实战经典 第75讲:模式匹配下的For循环

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载: 百度云盘:http://pan.baidu.com/s/1c0noOt ...

  7. Scala 深入浅出实战经典 第68讲:Scala并发编程原生线程Actor、Cass Class下的消息传递和偏函数实战解析

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载: 百度云盘:http://pan.baidu.com/s/1c0noOt ...

  8. Scala 深入浅出实战经典 第67讲:Scala并发编程匿名Actor、消息传递、偏函数解析

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  9. Scala 深入浅出实战经典 第66讲:Scala并发编程实战初体验

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

随机推荐

  1. 初次体验架设PHP网站

     最近需要快速架设一个网站,因此淘了一份成型的模板,然后就开始..过程比较曲折. 测试环境:Win7旗舰+IIS7.5+mysql5.6+PHP5.2.17+PHPManagerForIIS-1.1. ...

  2. js获取上一页、当前页及域名url方法,JS反回上一页的方法

    <html> <head> <title>js获取上一页url,js获取前一页地址,javascripts获取上一页url,javascript获取前一页地址< ...

  3. 菜鸟学sql,Oracle数据库结构比较

    转载自:http://www.cnblogs.com/tianqing/archive/2008/06/25/1229419.html 做oracle下数据库结构比较,比较具体详细差异,例如:2个库具 ...

  4. SICP 1.1-1.5

    1.1 a = b = nil 1.2 (/ (+ (- (- (+ (/ ))))) (* (- ) (- )) 1.3 a = b = nil 1.4... 1.5 (define (p) (p) ...

  5. 如何设置修改WPS批注上的用户信息名称

    http://jingyan.baidu.com/article/6b18230953cec7ba59e1596b.html 点击左上角的“WPS文字”:   选择“选项”:   点击“用户信息”: ...

  6. 移动端拖拽(模块化开发,触摸事件,webpack)

    通过jquery可以很容易实现CP端的拖拽.但是在移动端却不好用了.于是我自己写了一个在移动端的拖拽demo,主要用到的事件是触摸事件(touchstart,touchmove和touchend). ...

  7. 洛谷P1530 分数化小数 Fractions to Decimals

    P1530 分数化小数 Fractions to Decimals 103通过 348提交 题目提供者该用户不存在 标签USACO 难度普及/提高- 提交  讨论  题解 最新讨论 暂时没有讨论 题目 ...

  8. SQL常用日期转换

    0   或   100   (*)     默认值   mon   dd   yyyy   hh:miAM(或   PM)       1   101   美国   mm/dd/yyyy       ...

  9. PAT1038. Recover the Smallest Number

    //意识到一个重要错误,一直以为atoi,itoa是windows独有的,linux下不可用,直到刚刚... //string+=比strcat好用多了,字符比较也方便的多,但是用scanf读入str ...

  10. 安装Ecshop首页出现报错:Only variables should be passed by referen

    出现下面这就话: Strict Standards: Only variables should be passed by reference in E:\Tools\ECShop_V2.7.3_UT ...