第四章 类和对象

来源:互联网 发布:sql server except 编辑:程序博客网 时间:2024/05/22 01:32
  • 类、字段和方法

    • 类定义中可以放置字段和方法;
    • 方法用关键字 def 定义;
    • 字段保留对象的状态或数据;
    • Scala里把成员公开的方法是不显示地指定任何访问修饰符。即,Public是Scala的默认访问级别。
    • Scala里方法参数的一个重要特征是他们都是val的,不能在函数中对参数进行重新赋值。
  • 分号推断规则 除非以下任一情况出现,否则行尾被认为是一个分号

    • 疑问行由一个不能合法作为语句结尾的字结束,如句点或中缀操作符;
    • 下一行开始于不能作为语句开始的词;
    • 行结束于括号或方括号内部,因为这些符号不可能容纳多个语句;
  • Singleton(单例)对象

    • 除了用关键字 object 替换了关键字 class 以外,单例对象的定义看上去与类型一一致;
    • 如果单例对象与某个类共享同一个名称时,它就被称为是这个单例对象的伴生对象;
    • 类和其伴生对象必须定义在同一个源文件里;
    • 类被称之为这个单例对象的伴生类;
    • 两者之间可以互相访问私有成员;
    • 单例对象在第一次被访问时才会被初始化;
  • Scala程序

    • 任何带有合适签名的main方法的单例对象都可以作为程序的入口点;
    • Scala的基本编译器:scalac;
    • 如果文件是以定义结尾的,则不是scala脚本,脚本必须以结果表达式结束;
    • Scala发布包中包含一个叫做fsc的Scala编译器后台,可以将文件列表发送给后台程序,由其完成编译,使用fsc只需在首次运行时等待Java运行环境的启动;
  • Application特质
    • 该特质可以减少一些输入的工作,单例对象 extends App 就可以当作程序入口执行,而不需要写main方法;
    • 原因:特质Application声明了带有合适签名的main方法,并被单例对象继承,使之可以像Scala程序那样;
0 0
原创粉丝点击