scala教程:object 单例对象 作者:马育民 • 2021-12-07 20:23 • 阅读:10194 # 说明 Scala语言是 **完全面向对象** 的语言,所以 **没有 静态 概念** 但是Java有静态概念(如:静态属性、静态方法),scala为了和Java语言交互,提供 **`object` 对象** ,其 **属性**、**方法** 默认是 **静态**的 详见:[scala教程:object伴生对象 和 伴生类](https://www.malaoshi.top/show_1IX2MgaI6UGh.html "scala教程:object伴生对象 和 伴生类") 所以 `object` 中的 `main()` 相当于 java中入口 `main()` 方法 该对象是 **单例对象** ### 语法 单例对象采用 `object` 关键字声明,其余写法与定义类相同 ``` object 对象名{ val 属性:类型=值 def 方法名(形参列表):返回类型 = { } } ``` # 例子 ``` object Person{ val name:String="lucy" def main(args: Array[String]): Unit = { println("123") } } ``` **解释:** - 直接创建一个 **单例对象** - 可以有 `main()` 入口方法 # 反编译 [![](https://www.malaoshi.top/upload/pic/scala/20220323_103120.png)](https://www.malaoshi.top/upload/pic/scala/20220323_103120.png) ### 创建单例对象 下图红框处,创建单例对象 [![](https://www.malaoshi.top/upload/pic/scala/Snipaste_2021-12-07_20-13-09.png)](https://www.malaoshi.top/upload/pic/scala/Snipaste_2021-12-07_20-13-09.png) 原文出处:http://malaoshi.top/show_1IX2MgN13T4I.html