本篇作为scala快速入门系列的第十九篇博客,为大家带来的是关于单例对象的内容。
单例对象
scala中没有Java中的静态成员,我们想要定义类似于Java的static变量、static方法,就要使用到scala中的单例对象——object。
定义单例对象
单例对象表示全局仅有一个对象(类似于Java static概念)
- 定义单例对象和定义类很像,就是把class换成object
- 在object中定义的成员变量类似于Java的静态变量
- 可以使用object直接引用成员变量
示例
- 定义一个Dog单例对象,保存狗有几条腿
- 在main方法中打印狗腿的数量
参考代码
在单例对象中定义成员方法
- 在object中定义的成员方法类似于Java的静态方法
示例
- 设计一个单例对象,定义一个能够打印分割线(15个减号)的方法
- 在main方法调用该方法,打印分割线
参考代码
工具类案例
需求
- 编写一个DateUtil工具类专门用来格式化日期时间
- 定义一个方法,用于将日期(Date)转换为年月日字符串,例如:2030-10-05
步骤
- 定义一个DateUtil单例对象,定义日期格式化方法(format)
- 使用SimpleDateFormat将日期转换为字符串
参考代码
main方法
scala和Java一样,如果要运行一个程序,必须有一个main方法。而在Java中main方法是静态的,而在scala中没有静态方法。在scala中,这个main方法必须放在一个单例对象中。
定义main方法
main方法
示例
- 创建一个单例对象,在该单例对象中打印"hello, scala"
参考代码
实现App Trait 来定义入口
创建一个object,继承自App Trait(特质),然后将需要编写在main方法中的代码,写在object的构造方法体内。
示例
- 继承App特质,来实现一个入口。同样输出"hello, scala"
参考代码
本期的内容分享就到这里了,喜欢的小伙伴们记得点个赞,持续关注哟~下一篇将为大家带来伴生对象的相关内容,敬请期待٩(๑>◡<๑)۶