您当前的位置: 首页 >  scala

宝哥大数据

暂无认证

  • 3浏览

    0关注

    1029博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Scala基础知识之继承

宝哥大数据 发布时间:2018-05-13 11:54:21 ,浏览量:3

一、拓展 (继承) extends是Scala中实现继承的保留字

这里写图片描述 思考:单例对象是否能被继承呢?

二、 重写(Override)

这里写图片描述

规则

这里写图片描述

例如:

这里写图片描述

三、抽象(abstract)

这里写图片描述

四 、保护 (final, protected)

这里写图片描述

五、 构造 子类构造器的运行在超类构造器运行之后 在超类的构造器中调用的成员被子类重写后,返回值可能不正确:

这里写图片描述 构造week对象前先执行month的构造器,num被初始化为31,month为初始化days 数组,调用num,但num被子类week重写了,但因为week构造器还没被调用,此时 num的值未被初始化,因而返回0,days被设置为长度为0的数组,month构造器运行 完毕,执行week构造器,num被初始化为7

解决方法:

 将超类的val声明为final  将超类的val声明为lazy  在子类中使用提前定义语法

提前定义

这里写图片描述

关注
打赏
1587549273
查看更多评论
立即登录/注册

微信扫码登录

0.2343s