scala中的伴生对象,
package bms_entity.data/**** @Date 2021/8/23 11:12* scala中的伴生对象,* scala中把同一个源文件中相同名称的object结构称之为class结构的伴生对象,反过来反过来,把这个class结构的object结构的伴生类称为伴生类* class Singleton是object Singleton的伴生类* object Singleton是class Singleton的伴生对象* 构建伴生类和伴生对象的成立的几个前提:* 1.二者必须在同一个.class源文件* 2.二者的名称必须相同* 伴生类/伴生对象的特点:* 1.伴生对象可以访问伴生类中非私有的和私有的成员* 2.通常我们需要在伴生对象去覆盖一个方法--apply,用于构造伴生类的实例* 比如,Array,ArrayBuffer,Map等待都是通过伴生对象来创建对象,该构造的时候其实就是调用了该伴生对象的apply方法* 该apply方法的特点:* 1.返回值类型是本类的引用* 2.参数对象对应伴生类的构造器的参数列表* 3.有了伴生对象,同时覆盖了apply方法,使给了伴生类提供了一个简化的对象构造器方法,即可以省略掉new关键字*/
object CompanionObjectOps {def main(args: Array[String]): Unit = {val cc = new CompanionClass()println("-----------------------------------")val cc1 = CompanionClassprintln("-----------------------------------")val cc2 = CompanionClass("zhangsan",31)}}class CompanionClass {private val x = 6;def this(name:String,age:Int){this()println("name:" + name)println("age:" + age)}}object CompanionClass{def apply():CompanionClass = {new CompanionClass()}def apply(name:String,age:Int):CompanionClass = {val cc = new CompanionClass(name,age)println(cc.x)cc}}
scala中的伴生对象,相关推荐
- scala中的伴生类 伴生对象说明
1.代码如下: [java] view plain copy print ? package com.yy.oop /** * 伴生类和伴生对象 * class Student是伴生对象Object ...
- 好程序员大数据学习路线分享scala单列和伴生对象
好程序员大数据学习路线分享scala单列和伴生对象 scala单例 object SingletonDemo { def main(args: Array[String]): Unit = { val ...
- Kotlin 中的伴生对象和静态成员
转载请注明出处:https://blog.csdn.net/sinat_14849739/article/details/80552111 本文出自Shawpoo的专栏 我的简书:简书 一.前言 最近 ...
- 【无标题】Scala 中的伴生类 - 伴生对象
object TT {def main(args: Array[String]): Unit = {val clerk = new Clerkclerk.showInfo()Clerk.test(cl ...
- Scala进阶_伴生对象
伴生对象 在Java中,经常会有一些类,同时有实例成员又有静态成员.例如: public class CustomerService {private static String SERVICE_NA ...
- Scala编程之伴生对象
伴生对象是scala中静态的概念 Scala语言是完全面向对象(万物皆对象)的语言,所以并没有静态的操作(即在 Scala中没有静态的概念).但是为了能够和Java语言交互(因为Java中有静态概念) ...
- [kotlin]kotlin中的伴生对象(companion object)到底是个什么东西?
文章目录 写在前面 第一步,写出kotlin代码 第二步,转成Java代码 第三步,查看java代码 第四步.得出结论 1.`companion object`的作用 2. 写在`companion ...
- Scala中Object和Class区别(伴生类和伴生对象)
文章目录 一,介绍 二,类Class 2.1 类定义 2.2 构造器 1.基本语法 2.构造器参数 2.3 私有成员和Getter/Setter语法 三,单例对象Object 四,伴生对象和伴生类介绍 ...
- 四, Scala 伴生对象, 特质
文章目录 四, Scala 伴生对象和伴生类 4.1 单例对象和伴生对象 4.1.1 什么是单例对象? 4.1.2 如何使用Scala的伴生对象和伴生类来实现单例模式? 4.1.2 apply方法 4 ...
最新文章
- 迷途指针,从百度百科上摘抄的,语言很幽默
- python自动创建目录_python自动目录环境
- springboot 问题Change project compliance and JRE to 1.5
- python 面向对象 新式类和经典类
- python和java哪个好学-到底学python好还是学java比较好 哪个容易学习点
- Tensor的索引与切片
- RIPv1配置(Enabling Rip)
- python解数独--世界最难数独2.3秒完成_【数独】世界最难数独90+毫秒解决。一个不错的算法...
- matlab不显示x,y,z轴
- 计算机网络连接叹号,【电脑网络连接感叹号】电脑网络连接感叹号怎么回事_电脑网络连接感叹号怎么办_亲亲宝贝网...
- java 图片切割_使用Java实现图像分割
- 简述python语言的主要功能和特点_计算机考试简答题
- java平面内有n个矩形_java有关于M*N矩形求解正方形长方形个数问题
- 查找节点下的所有子节点(包括孙节点和隐藏节点)
- 导入Unity的模型在播放动画时手脚会轻微晃动(抖动)
- 【 MATLAB 】poly 函数介绍
- 【UBDC干货分享】数据运营驱动企业价值破圈增长
- 2021年化工自动化控制仪表考试试卷及化工自动化控制仪表作业考试题库
- 一个程序猿的工作五年的总结和感悟!与君共勉!
- Python ssh 远程执行shell命令
热门文章
- Ubuntu下安装并配置VS Code编译C++
- zepto 事件分析4(事件队列)
- 【李宏毅2020 ML/DL】P66 Self-supervised Learning
- Oracle如何根据SQL_TEXT生成SQL_ID
- Weka开发[8]-ID3源码介绍
- 阿里java面_我的后端Java面经、八面阿里,已拿offer!
- java post 注册_利用JAVA发送POST请求(垃圾注册就是这么产生的) | 学步园
- python 文字处理系统_详解Python中的文本处理
- MySQL:Specified key was too long; max key length is 1000 bytes
- 使用yum命令时Error: Cannot find a valid baseurl for repo: base