首页 > 其他 > 详细

scala对象简单记录

时间:2018-07-08 23:56:55      阅读:274      评论:0      收藏:0      [点我收藏+]
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对象简单记录

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!