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
    }






























    }
  • 相关阅读:
    学习笔记
    display:inline、block、inline-block的区别
    响应式布局设计
    CSS中position属性三大定位方式讲解
    CSS position 属性 一定要有width
    JQuery中each()怎么跳出
    JSON 学习笔记
    【转】30个你不可不知的CSS选择器
    HTML文档类型的作用,文档类型有多少种?
    jQuery中children()与find()的区别
  • 原文地址:https://www.cnblogs.com/chenzechao/p/8671403.html
Copyright © 2011-2022 走看看