5.Scala面向对象
来源:互联网 发布:java method 编辑:程序博客网 时间:2024/05/22 03:52
1.在Scala中定义类用class关键字
2.可以使用new ClassName的方式构建出类的对象
3.如果Object中的名称和class的名称相同,则Object中的内容都是class的静态内容:也就是说Object中的内容class都可以在没有实例化的时候直接去调用,正因为没有类的实例的时候可以调用object中的一切内容,所以使用object中特定的方法来创建实例,而这个特定的方法就是apply方法
4.object中的apply方法是class对象生成的工厂方法,用于控制对象的生成
5.在定义scala的class的时候,可以直接在类名后面()里加入类的构造参数,此时在apply中也必须有这些参数
6.scala中可以在object中构造很多apply方法
7.scala中很多集合都是使用apply构建的,例如:Array
def apply[T: ClassTag](xs: T*): Array[T] = { val array = new Array[T](xs.length) var i = 0 for (x <- xs.iterator) { array(i) = x; i += 1 } array }
8.scala实例:
class HelloOOP(age:Int) { var name = "Spark" def sayHello = println("Hi,My name is " + name + " I am " + age + " years old");}object HelloOOP { var number = 0 def main(args: Array[String]): Unit = { println("Hello Scala OOP!!!") // val helloOOP = HelloOOP(30) //其实调用的是apply(age:Int) val helloOOP = HelloOOP() //其实调用的是apply() helloOOP.sayHello Array(1,2,3,4,5) } def apply() : HelloOOP = { println("My number is : " + number) number += 1 new HelloOOP(10) } def apply(age:Int) : HelloOOP = { println("My number is : " + number) number += 1 new HelloOOP(age) } }
0 0
- 5.Scala面向对象
- Scala的面向对象
- Scala面向对象
- Scala面向对象学习
- Scala面向对象
- Scala面向对象
- scala面向对象
- Scala 面向对象编程
- Scala的面向对象
- scala面向对象编程
- Scala面向对象编程
- Scala面向对象编程
- scala学习三:scala面向对象
- Scala学习 2 Scala面向对象
- scala 学习笔记 面向对象
- Scala之旅-面向对象
- 7.scala面向对象2
- Spark基础-Scala面向对象
- Qt标准对话框之QFileDialog
- javascript模块化与命名空间
- Archive for required library: 'D:/maven/repository/com/microsoft/sqlserver/sqljdbc4/4.0/sqljdbc4-4.0
- 国际化: 理解Java平台下的Locale
- jquery easyui DataGrid 数据表格 属性
- 5.Scala面向对象
- java反射与泛型
- Angular4学习笔记(五):http
- java从入门到弃坑第七天
- 22. Generate Parentheses
- Ceph删除一个主机
- FragmentPagerAdapter与FragmentStatePagerAdapter区别
- IOS学习笔记二
- Android shape的使用