Spark基础-Scala面向对象

核心
1、scala面向对象基础

package com.xlucas

/**
  * Created by xlucas on 2017/8/16 0016.
  * 1、scala中定义类用class关键字
  * 2、可以使用new 关键字来构建出对象
  * 3、如果名称相同,则object中的内容都是class的静态内容,也就是说object中的内容class都可以在没有实例的情况下直接调用
  * 所以可以使用object中的特定方法来创建类的实例,而这个特定方法就是apply方法。
  * 4、object中的apply方式是class对象生成的工厂方法,用于控制对象的生成
  * 5、很多框架的代码一般直接调用抽象类的object的apply方法生成类的实例对象
  * 6、object是class的伴生对象 class是object伴生类。class可以访问object中的一切内容,object可以访问class中一切内容
  * 7、在定义scala的class的时候可以直接在类后面()里加入构造参数,此时也需在apply方法中也必须有这些参数
  */
class ScalaOop(age:Int){
 var name="spark"
 def sayHello={
   println("hello "+name+" "+age)
 }
}
object ScalaOop {
  def main(args: Array[String]): Unit = {
   val scalaoop=new ScalaOop(20)//先实例化在调用
    scalaoop.sayHello
    ScalaOop(10).sayHello//直接通过类名调用class里面的方法
  }
  def apply(age :Int): ScalaOop = {
    new ScalaOop(age)
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值