Scala的类和构造器

1.面向对象的三大思想:

(1)更符合人们的思考习惯

(2)把复杂的事情简单化

(3)把程序员从执行者变成指挥者

2.面向对象的三大特征:封装,继承,多态

3.用class来创造类,用new来创建对象

4.private:在类的外部不可访问,表示私有的,在内部还是可以访问private

5.主构造函数:

new class时,会自动调用(构造函数)

主构造函数的定义方式:

class 类名 ([parameter1,parameter2.......]) {
}
package TestC1

class Person(var name:String,var age:Int){

  private  var gender="女"



//为辅助构造器。名字固定,就叫this。  
//辅助构造器的作用:让定义对象更加灵活
def this(name:String,age:Int,gender:String){
    this(name,age)
    this.gender=gender
  }
  def singsong(songName:String) : Unit ={
    //    name="a"
    //    gender="男"//报错,因为gender是私有化的,在此不可访问也不可修改
    println(s"我是$name,$age 岁,性别:$gender 唱歌 $songName")
  }
}


object TestClass {
  def main(args: Array[String]): Unit = {
    var p1 = new Person("小花", 19)
    p1.age = 16
    //p1.name="小花"
    p1.singsong("小清新")
    println(p1.name, p1.age)
    var p2 = new Person("小明", 20,"男")
    p2.singsong("小清新")
  }
}

6.辅助构造器一定会调用主构造器。当声明一个类时,只有一个构造器。辅助构造器没有私有化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值