您的位置:首页 > 其它

scala程序设计

2016-07-19 21:43 134 查看
4.4 单例对象

    在scala中创建单例对象使用object关键字,因为单例对象无法初始化,所以不能给他的主构造函数传递参数。

   例子:

            


  4.5 独立对象和伴生对象

    上边的MarkerFactory是个独立对象的例子。他并未自动关联到任何一个类上,即便他管理了Marker的实例。scala可以创建一个关联到类上的单例,同

类共享相同的名字,称为伴生对象,对应的类就称为伴生类

     


    


    每个类都可以有伴生对象,他们跟伴生类写在同一个文件中。伴生对象在scala中很常见,他们提供了在类一级进行操作的便捷方法。

同时,他们还可以作为scala缺少静态成员的变通措施。

5.2 any类型

    在scala李,any让我们可以持有任何类型对象的引用。any是一个抽象类,它有如下方法:!=(), ==(), anInstanceOf(), equals(), hashCode(),

isInstanceOf(), toString()

   Any的直接后代是AnyVal和AnyRef, 对于所有可以映射为java基类的scala类型,比如,Int,Double,AnyVal充当着他们的基类。另一方面,

AnyRef是所有引用类型的基类。AnyVal没有提供任何额外的方法,AnyRef则包含了java的object方法,比如notiry(), wait()和finalize()

   AnyRef直接映射为java的object,在scala里使用它,就如同在java李使用object一样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: