您的位置:首页 > 大数据

DT大数据梦工厂 温故而知新 之11讲

2015-07-30 07:56 295 查看
王家林亲授 大数据开发语言《Scala深入浅出实战经典》(1-71讲全部视频、代码、PPT)下载 ,总共有140讲Scala视频!

百度云:http://pan.baidu.com/s/1jGjFpWy

腾讯微云:http://url.cn/TnGbdC

360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码
45e2

DT大数据梦工厂 温故而知新 之12讲scala 中apply应用

package TestPractice

/**

* @author Administrator

*/

object ApplyDemo {

def main(args: Array[String]) {

//调用apply()方法的方式一

//Dog.apply()

//调用apply()方法的方式二

// Dog()

//创建对象的方式一

val cat1 = new Cat

println(cat1)

//创建对象的方式二(需要在对象中定义apply()方法)

val cat2 = Cat.apply

println(cat2)

//创建对象的方式三(需要在对象中定义apply()方法)(推荐)

val cat3 = Cat()

println(cat3)

//获得对象的方式四

val cat4 = Cat

println(cat4 + "\t" + Cat)

//用object Student的apply()方法,创建对象

Student1("stu001","zhangsan","shandong")

}

}

//应用1

class Dog {

println("class Dog apply()")

}

object Dog {

//对象中的apply()方法

def apply(): Unit = {

println("object Dog apply()")

}

}

//总结 在函数动调用可以直接调用其方法 还可以直接省去直接调用类构造器

//应用2

class Cat{

println("class Cat apply()")

}

object Cat {

//object中apply()方法一般去创建一个对象

def apply() = new Cat

}

class Student1(var id :String, var name:String,var addr:String){

}

object Student1{

def apply( id :String, name:String, addr:String)={

println("object Student.apply()")

new Student1(id,name,addr)

}

}

run 结果

class Cat apply()

TestPractice.Cat@6a5714de

class Cat apply()

TestPractice.Cat@7b1b315c

class Cat apply()

TestPractice.Cat@3645ce28

TestPractice.Cat$@4838ddcc TestPractice.Cat$@4838ddcc

object Student.apple()

总结 object中apply()方法一般去创建一个对象
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: