在伴生对象中定义apply方法,可以实现;类名(参数)方式来创建对象实例`

object ApplyDemo01 {def main(args: Array[String]): Unit = {val list = List(1,2,5)println(list)val pig = new Pig("小花")//使用apply方法来创建对象val pig2 = Pig("小黑猪") //自动触发 apply(pName:String)val pig3 = Pig() //自动触发def apply(): Pig = new Pig("匿名猪")println("pig2.name=" + pig2.name) //小黑猪println("pig3.name=" + pig3.name) //匿名猪}
}//案例演示apply方法
class Pig (pName:String){var name: String = pName
}object  Pig {//编写一个applydef apply(pName:String) : Pig = new Pig(pName)def apply(): Pig = new Pig("匿名猪")
}

伴生对象-apply方法相关推荐

  1. 【Kotlin】Kotlin 单例 ( 懒汉式 与 恶汉式 | Java 单例 | Kotlin 单例 | 对象声明 | 伴生对象 | get 方法 | ? 与 !! 判空 )

    文章目录 I . 单例的懒汉式与恶汉式 II . Java 中的懒汉式与恶汉式 III . Kotlin 中对应 Java 的懒汉式与恶汉式 IV . Kotlin 对象 ( object ) 声明 ...

  2. kotlin学习之伴生对象(十五)

    目录 1. 基本用法 2. 实现接口 3. 伴生对象扩展 伴生对象最简单直白的理解就是与一个类相伴而生的对象,由于它处于类内部,所以必然和包含它的类存在某种联系. 1. 基本用法 伴生对象使用关键字c ...

  3. Kotlin 中的伴生对象和静态成员

    转载请注明出处:https://blog.csdn.net/sinat_14849739/article/details/80552111 本文出自Shawpoo的专栏 我的简书:简书 一.前言 最近 ...

  4. Scala类的定义,主/辅构造器,以及方法中的变量定义,单例对象,伴生对象,Apply方法调用,应用程序对象

    1. 类 1.1. 类的定义 package cn.toto.scala.day2/*** 在Scala中,类并不用声明为public类型的.* Scala源文件中可以包含多个类,所有这些类都具有共有 ...

  5. js中函数对象的方法,原型方法apply、call、bind、toString、toLocaleString、valueOf

    全栈工程师开发手册 (作者:栾鹏) js系列教程4-函数.函数参数教程全解 js中函数也是一种对象,因此有自己的原型对象,可以作为其他对象的属性,也可以作为其他函数的参数. 函数方法 [apply() ...

  6. scala Object关键字声明的类直接调用方法、伴生对象

    object Student {def test(): Unit = {println("test")} } object T5 {def main(args: Array[Str ...

  7. JS-面向对象-改变This的指向---使用call方法改变this的指向 / 使用apply方法改变this的指向 / 使用bind方法改变this的指向

    使用call方法改变this的指向 <!DOCTYPE html> <html lang="zh"><head><meta charset ...

  8. Scala单例对象(伴生对象)

    概念 Scala语言是完全面向对象的语言,所以并没有静态的操作(即在Scala中没有静态的概 念).但是为了能够和Java语言交互(因为Java中有静态概念),就产生了一种特殊的对象 来模拟类对象,该 ...

  9. Scala学习教程笔记二之函数式编程、Object对象、伴生对象、继承、Trait、

    1:Scala之函数式编程学习笔记: 1:Scala函数式编程学习:1.1:Scala定义一个简单的类,包含field以及方法,创建类的对象,并且调用其方法:class User {private v ...

最新文章

  1. webdriver 爬虫 java_java爬虫通过selenium+WebDriver遍历页面链接报错
  2. 一般项目中哪里体现了数据结构_优秀程序员都应该学习的数据结构与算法项目(GitHub 开源清单)...
  3. 云原生数据库POLARDB专场“硬核”解析
  4. mysql 统计 1的数量_利用MySQL统计一列中不同值的数量方法示例
  5. CAGradientLayer简介 实现颜色渐变
  6. 图之Dijkstra算法
  7. [Flash开发笔记] AS中保留多少位小数的函数
  8. pku1274 The Perfect Stall
  9. 小米闪购首页实战(HTML+CSS+JS)
  10. 手机12306买卧铺下铺技巧_12306网上购下铺技巧(亲历版)
  11. LabView 2018破解版下载
  12. 免费PDF转换器注册码
  13. DCMI接口之OV2640摄像头
  14. 数学之美阅读笔记(1)
  15. 要去实习应该把这些面试题搞(bei)懂(hui)
  16. 《信息物理融合系统(CPS)设计、建模与仿真——基于 Ptolemy II 平台》——2.5 如何操作大模型...
  17. 运筹说 第75期 | 数学家欧拉也玩跨界
  18. XCP学习笔记 ———— CTOs
  19. 饥荒专属服务器开完怎么运行,饥荒联机版专服简易启动教程
  20. 2018中国区域农业品牌影响力排行榜发布,100个知名品牌当选

热门文章

  1. Java 进阶基础知识
  2. 信息隐藏技术与应用期末复习
  3. SEO优化:WordPress发布文章主动推送到百度,加快收录保护原创
  4. Hadoop Hive基础sql语法
  5. 5分钟实现VS2010整合NUnit进行单元测试
  6. 深入理解JavaScript中的闭包
  7. Canvas基础-粒子动画Part2
  8. java spring多数据源配置文件_基于注解实现SpringBoot多数据源配置
  9. java可以实现agv调度吗_AGV路线优化及实时调度
  10. vue.js环境部署