Scala基础—面向对象编程示例
来源:互联网 发布:淘宝永久不支持解绑 编辑:程序博客网 时间:2024/05/21 18:01
package com.spark.scala.basics/** * 1.使用new ClassName的方式构建出类的对象 * 2.如果名称相同,则object中的内容都是class的静态内容,在object中的内容class都可以在没有实例的时候去直接调用; * 可以使用object中的特定的方法来创建类的实例,而这个特定的方法就是apply方法 * 3.object中的apply方式是class对象生成的工厂方法,用于控制对象的生成 * 4.直接调用抽象类的object的apply方法去生成类的实例对象 * 1)apply具有类的对象生成,抽象类是不可以直接实例化,在apply方法中可以实例化抽象类的子类,比如Spark的图计算,Graph是抽象的类,在object Graph * 的apply方法 * 5.object HelloOOP是class HelloOOP的伴生对象,class HelloOOP可以直接访问object HelloOOP中的一切内容,而class HelloOOP是object HelloOOP的伴生类 * object HelloOOP可以访问class HelloOOP中除去private[this]修饰的成员的一切内容 * 6.在定义scala的class的时候,可以直接在类名后面()里加入类的构造参数,此时在apply方法中也必须有这些参数 * 7.scala中,可以在object中构建很多apply方法
* 8.Array(1,2,3,4,5,6)就是调用的apply的方法 */class HelloOOP(age: Int) { var name = "Scala" def sayHello(): Unit = println("My name is " + name + "!" + " My age is " + age + "!")}object HelloOOP { def main(args: Array[String]): Unit = {// val helloOOP = new HelloOOP// helloOOP.sayHello val helloOOP = HelloOOP() //注意此时有() helloOOP.sayHello() } def apply(age: Int): HelloOOP = { new HelloOOP(age) } def apply(): HelloOOP = { new HelloOOP(5) }}
阅读全文
0 0
- Scala基础—面向对象编程示例
- Scala 的面向对象编程基础
- scala学习笔记:面向对象编程基础
- Scala 面向对象编程
- scala面向对象编程
- Scala面向对象编程
- Scala面向对象编程
- Scala基础—函数式编程示例
- Scala基础—implicit编程示例
- Scala基础—并发编程示例
- Scala学习—面向对象编程之类
- Spark基础-Scala面向对象
- Scala学习—面向对象编程之对象
- Scala面向对象编程之对象
- Scala编程指南:面向对象编程
- Scala基础—*类型参数编程实战示例
- Scala学习—面向对象编程之继承
- Scala学习—面向对象编程之Trait
- Spark流计算(四)
- JAVA(学习笔记1.1.1)——AWT概述
- L2-013. 红色警报
- Android 【工具类】
- JAVA 并发编程-线程与进程的由来(一)
- Scala基础—面向对象编程示例
- tcpdump抓包却抓到两个相同包的奇葩问题
- finish activity收回软键盘
- 安卓逆向之华山杯ctf第一题:错错错
- C++广度优先搜索算法之哆啦A梦的时光机
- leetcode15. 3Sum
- CEDD图像检索算法
- VS2015编译CPU100%问题解决
- caffe学习日记--Lesson2:再看caffe的安装和使用、学习过程