码迷,mamicode.com
首页 > 其他好文 > 详细

scala对象简单记录

时间:2018-07-09 00:03:01      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:pre   highlight   str   person   方法   new   message   cts   文件中   

object Person {

  private val eyeNum = 2

  def getEyeNum = eyeNum

  def main(args: Array[String]): Unit = {
    println(Person.getEyeNum)  // 2
  }

}

  

abstract class Hello(var message:String) {

  def sayHello(name :String)

}

object HelloImpl extends Hello("hello"){

  override def sayHello(name: String): Unit = {
    println(message + "," + name)
  }


  def main(args: Array[String]): Unit = {
    HelloImpl.sayHello("yxj")
  }

}

  

/**
  * 一个类和一个object对象名字相同,都在一个.scala文件中,那么他们就是伴生类和伴生对象
  *
  * @param name
  * @param age
  */
class People(name:String , age:Int ) {

  def sayHello = println("hi," + name +", your age is " + age + ",your eyeNum is " + People.eyeNum)

}

object People {

  private val eyeNum = 2

  def getEyeNum = eyeNum

}

object objectsTest{

  def main(args: Array[String]): Unit = {
    val yy = new People("yxj" , 30)
    yy.sayHello
  }

}

  

 

/**
  * object中apply方法的使用,简化对象创建的过程
  *
  */

class Apple(name:String ,age:Int) {
  println(name + "," + age)
}

object Apple{

  // 伴生对象的apply简化了创建伴生类的方式
  def apply(name: String, age: Int): Apple = new Apple(name, age)

  def main(args: Array[String]): Unit = {
    val a = Apple("yxj" , 30)
    println(a)

    // 普通的创建类的过程
    val a1 = new Apple("yxj" , 31)
    // 伴生对象定义了apply后,不需要在使用new关键字来创建一个类的对象实例了

  }

}

  

 

scala对象简单记录

标签:pre   highlight   str   person   方法   new   message   cts   文件中   

原文地址:https://www.cnblogs.com/yxj0728/p/9281809.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!