日志

27 阅读1分钟
 /*
     实现一个日志类: Logger
     1.把一些操作信息写入到文本文件中。
     2.实现单例
  */

class Logger(filename:String) {
  def log(content:String) :Unit = {
    // 把内容写入一个文件中
    val writer = new Filewriter(filename,true)
    writer.write(content + "\n")
    writer.close()
    println(s"${content}")
  }
}

object Logger {
  //定一个对象
  var instance:Option[Logger] = None
  def apply(filename:String): Logger = {
    if(instance.isEmpty){
      instance = Some(new Logger(filename))
    }
    instance.get
  }
}

def main(args: Array[String]): Unit = {

  val logger1 = Logger("test.log")
  val logger2 = Logger("test.log")
  // println(logger2 == logger1)
  logger1.log("2005-11-4 09:06:03 上scala课")
  logger1.log("2005-11-5 09:06:03 运动会")
  logger1.log("2005-11-6 09:06:03 休息")