关闭

Scala 学习笔记

86人阅读 评论(0) 收藏 举报

1.抽象类

1.具体的类 只有var才可以使用占位符,val不可以使用占位符

2.抽象类 字段可以不用初始化,方法不用有方法体。



3.复写抽象字段方法 用override  关键字 但是不用 override字段也是可以得



2.Scala中作为接口的trait、在对象中混入trait代码实战


我们先看下JAVA里面抽象类与接口的区别   
抽象类
只要类里面有一个方法是抽象的,它就是抽象类
抽象类的子类有义务去补充抽象方法
抽象类不能被实例化
接口
接口不是类
Interface A
Interface 中的变量必须是静态变量   static final
n个抽象函数在子类中必须都给予实现
子类实现接口,子类中的方法必须为public       
 1.trait 是用extends  和 with 关键字来实现 第一次用extends 第二次用with 

2.trait 与java中接口一个很大的区别是 JAVA抽象方法没有方法体 但是trait中可以有,假如trait中有方法实现实现继承trait的类的方法必须要有
override 关键字来修饰。如果trait中没有方法体就可以不用override来修饰, 但是规范一般必须要有override来修饰

3,混入trait,都必须继承同一个类这里指logger

而且必须实现方法  

对象混入可以修改trait的默认行为 前提是trait是logger的子trait

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:216次
    • 积分:21
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档