当前位置:网站首页>Scala对象object
Scala对象object
2022-07-23 03:15:00 【u013250861】
1.1 什么是Scala中的单例对象?
单例,单例,顾名思义,它只有一个实例,没有更多了。这就是它区别于class类的地方。
Scala是一种面向对象的编程语言,常量/变量/方法等必须要定义在class或object里面才行,在其他之外的地方是不能被定义的。就是说object对象、class类是唯二可定义其成员的地方。
定义对象的关键字是object,它是一个实例,不是一个蓝图,因此它不需要外部调用即可执行其方法。
和惰性变量一样,单例对象是延迟创建的,当它第一次被使用时创建。
当然可以创建多个单例对象,也可以在类或方法中定义对象,自然也可以在一个对象或类中引用另一个对象中的方法或常量。如果要在一个脚本中引用另一个脚本中的对象的方法,则需要import进来对象的路径。
注意:一个单例对象是全局唯一的,所以具有稳定路径。即你不能创建两个同样名称的对象,不再同一个路径也不行,任何地方都不行。
1.2 为什么选择单例对象?
每个程序都需要一个从执行开始的点。 在OOPS中,类需要对象才能执行。 但是需要首先执行main()方法才能调用该类的其他成员。
为了在scala中执行main()方法,许多面向对象的编程语言都使用static关键字,但是scala编程语言中没有static关键字。
这就是为什么在Scala中我们使用定义了main方法的单例对象。
1.3 单例对象的特征 (Features of singleton object)
使用object关键字创建。
对象中的成员是全局成员,即可以从程序中的任何位置调用成员。
单例对象无法创建实例。 即它只能有唯一的实例就是它本身。
允许继承,即继承可以扩展类和特征。 (it can extend class and traits.)
如果要在一个单例对象中引用 另一个单例对象中的成员,我们将使用 引用单例对象的名称 . {引用单例对象的名称}. 引用单例对象的名称.{成员名称} 的方法引用。
参考资料:
9、Scala对象object
边栏推荐
猜你喜欢

Click position and click offset of airtest script

分库分表真的适合你的系统吗?聊聊分库分表和NewSQL如何选择

从业务开发中学习和理解架构设计

The gospel of small and medium-sized enterprises is coming! Jnpf is becoming popular, helping business digital upgrading

webshell管理工具及其流量特征分析

枚举类的使用和实现

Distributed lock optimization scheme under 100 million traffic! It works so well~

Baidu map eagle eye track service

卡特兰数---

Use modern development methods and thinking to get rid of the "stumbling block" of legacy systems
随机推荐
十年磨一剑,云原生分布式数据库PolarDB-X的核心技术演化
Baidu map eagle eye track service
华泰证券网上开户安全吗是真的吗
switch语句的工作原理
30行自己写并发工具类(Semaphore, CyclicBarrier, CountDownLatch)是什么体验?
并发编程中volatile面试总结
How to deal with the computer pressing keys all the time
es6相关面试题3
华泰证券开户安全吗是真的吗,是正规的吧
[learning notes] node -- from 0 foundation to actual enterprise official website
这个工具,补齐了 JMeter性能分析最后一公里短板
卡特兰数---
Spark 内存管理机制 新版
转行软件测试薪资10K | 手中有粮心中有底,在任何时候都是真理
【学习笔记】Node--从0基础到实战企业官网
开源进销存系统,10分钟搞定,建议收藏!
Hfish蜜罐的搭建与测试
软件质量管理实践全面总结
中信期货网上开户是否安全,网上开户会被骗吗?
剑指 Offer II 031. 最近最少使用缓存