scala类对象特质

1 定义类

  class Person {

  }
  2 定义对象
  def main(args: Array[String]): Unit = {
    ***// ctrl+alt+v   自动创建对象***
    val peson = new Person
  }

3简单方式
// 没有成员变量 和成员方法 可以省略{}
// 构造器为空的 ()可以省略

class Person

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

// 构造器为空的 ()可以省略
val person = new Person

print(person)

}
成员变量的定义及访问

在这里插入图片描述

下划线初始化成员变量

注意
在这里插入图片描述

在这里插入图片描述

创建对象时可以 new xxx.var 快捷方式
定义成员方法和调用成员方法
在这里插入图片描述

注意就是 在定义类时 属性 和方法标上+ 号 表示 属性和方法都是共有,如果标上 -
的化时私有(属性和方法)

访问修饰符
注意:私有的成员变量和方法是有修饰符例如 private protected

如何调用构造器

创建住构造器

class Person(var name:String="",var age:Int=0){
    print("调用住构造器")
  }

创建对象时传参数有三种
1 把参数传满
2 一个也不传
3 指定某个进行传递 age=xx
在这里插入图片描述

辅助构造器
在这里插入图片描述

注意
在这里插入图片描述

单列对象
object Dog {
成员变量

成员方法

}

访问时:Dog.成员
Dog.方法

单例对象可以定义工具类


定义入口
两种方式
在这里插入图片描述

第二种方式
在这里插入图片描述

伴生对象

要求
在这里插入图片描述
注意: 如果伴生类或者伴生对象的属性或者成员 private加了 this ,就不可访问 ,只允许本类访问

apply 方法
在这里插入图片描述

apply方法就是快速创建一个对象,就不需要new 了

继承
在这里插入图片描述

继承注意:
1 变量的定义类型 只能用 val 不能用var

重写字段或者重写方法
关键字
override 字段
override 方法
super 访问父类的成员(属性 方法)
super.name
super.age
super.sleep

对象类型的判断
在这里插入图片描述

用法
在这里插入图片描述

在这里插入图片描述

对象.isInstanceOf 是判断这个对象是否属于这个类 或者这个对象父类时他
在这里插入图片描述

类型的转换符合这个类型就转
val student1 = student.asInstanceOf[Student]


抽象类
在这里插入图片描述

继承的快捷键

ctrl +i

匿名类不类
在这里插入图片描述

特质(接口)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值