zoukankan      html  css  js  c++  java
  • chapter05

    /**
    * Created by EX-CHENZECHAO001 on 2018-03-29.
    */
    class Chapter05 {

    }

    // 类
    // 类中的字段自动带有getter方法和setter方法

    // 5.1 简单类和无参方法
    class Counter {
    private var value = 0 // 必须初始化字段
    def increment(): Unit ={ // 方法默认是仅有的
    value += 1
    }
    def current() = value // 用时可用()也可不用counter.current()
    def currentNew = value // 用时不可用() counter.currentNew
    }

    // 5.2 带getter和setter的属性
    class Person {
    var age = 0
    }

    object Person {
    val person = new Person()
    println(person.age) // getter方法
    person.age = 10
    println(person.age) // getter方法
    }

    class Person2 {
    private var privateAge = 0

    // 变成私有并改名
    def age = privateAge

    def age_=(newValue: Int): Unit = {
    if (newValue > privateAge) {
    privateAge = newValue
    }
    }
    }

    object Person2 {
    val person2 = new Person2()
    person2.age_=(20)
    println(person2.age)
    person2.age_=(11)
    println(person2.age)
    }

    // 如果字段是私有的,则getter和setter方法也是私有的
    // 如果字段是val,则只有getter方法被生成
    // 如果不需要任何getter或setter,可以将字段声明为private[this]

    // 5.3 只带getter的属性
    class Message {
    // scala会生成一个私有的final字段和一个getter方法,但没有setter方法
    val timeStamp = new java.util.Date().getTime

    // 实现属性的4个选择
    // var foo: Scala自动合成一个getter和setter
    // val foo: Scala自动合成一个getter
    // 由你定义foo和foo_=方法
    // 由你来定义foo方法

    }








    object Chapter05 {

    def main(args: Array[String]): Unit = {
    val counter = new Counter()
    counter.increment()
    counter.increment()
    counter.increment()
    println(counter.current())
    println(counter.currentNew)

    Person2
    }






























    }
  • 相关阅读:
    spark 学习笔记 sample 算子
    spark 学习笔记 dataframe注册生成表
    hbase 的hdfs目录解析
    ldap用户创建
    phpldap部署
    ldap部署
    zookeeper 无法启动 ERROR org.apache.zookeeper.server.quorum.QuorumPeer: Unable to load database on disk java.io.EOFException
    数据采集flume kafka
    GraphQL教程(二) .net Core api 2.1
    GraphQL教程(一)。.net Core API2.1
  • 原文地址:https://www.cnblogs.com/chenzechao/p/8671403.html
Copyright © 2011-2022 走看看