本篇是scala快速入门系列的第十七篇博客,为大家带来的是关于类和对象的内容。
类和对象
scala是支持面向对象的,也有类和对象的概念。我们依然可以基于scala语言来开发面向对象的应用程序。
创建类和对象
用法:
- 使用
class
来定义一个类 - 使用
new
来创建对象
示例:
创建一个Person类,并创建它的对象。
步骤:
- 创建一个scala项目,并创建一个Object
- 添加main方法
- 创建类和对象
实现:
- 在IDEA中创建项目,并创建一个Object(main方法必须放在Object中)
- 添加 main 方法
- 创建结果Person 类
- 在 main 方法中创建 Person 类对象
参考代码:
简写方式
用法:
- 如果类是空的,没有任何成员,可以省略
{}
- 如果构造器的参数为空,可以省略
()
示例: 使用简写方法重新创建 Person 类和对象
参考代码:
定义和访问成员变量
一个人会有自己的属性,例如:人这样一个类,有自己的名字和年龄。我们接下来学习在类中定义,和访问成员变量。
用法
- 在类中使用
var/val
来定义成员变量 - 对象直接使用成员变量名称来访问成员变量
示例
- 创建一个Object,添加main方法
- 创建Person类,添加姓名字段和年龄字段,并对字段进行初始化,让scala自动进行类型推断
- 在main方法中创建Person类对象,设置成员变量为"张三"、20
- 打印对象的名字和年龄
参考代码
使用下划线初始化成员变量
scala中有一个更简洁的初始化成员变量的方式,可以让代码看起来更加简洁。
用法
- 在定义var类型的成员变量时,可以使用
_
来初始化成员变量 – String => null – Int => 0 – Boolean => false – Double => 0.0 – … val
类型的成员变量,必须要自己手动初始化
示例
- 定义一个Person类,包含一个姓名和年龄字段
- 创建一个名为"张三"、年龄为20岁的对象
- 打印对象的名字和年龄
步骤
- 创建一个Object,添加main方法
- 创建Person类,添加姓名字段和年龄字段,指定数据类型,使用下划线初始化
- 在main方法中创建Person类对象,设置成员变量为"张三"、20
- 打印对象的名字和年龄
参考代码
定义成员方法
类可以有自己的行为,scala中也可以通过定义成员方法来定义类的行为。
定义
在scala的类中,也是使用def来定义成员方法
示例
- 创建一个Customer类
- 创建一个该类的对象,并调用printHello方法
步骤
- 创建一个Object,添加main方法
- 创建Customer类,添加成员变量、成员方法
- 在main方法中创建Customer类对象,设置成员变量值(张三、男)
- 调用成员方法
参考代码
访问修饰符
和Java一样,scala也可以通过访问修饰符,来控制成员变量和成员方法是否可以被访问。
定义
Java中的访问控制,同样适用于scala,可以在成员前面添加private/protected关键字来控制成员的可见性。但在scala中,没有public关键字,任何没有被标为private或protected的成员都是公共的
案例
- 定义一个Person类
- 在main方法中创建该类的对象,测试是否能够访问到私有成员
参考代码
看到这里的都是最优秀的程序猿~~
本期的内容分享就到这里了,喜欢的小伙伴们记得点个赞,持续关注哟~下一篇将为大家带来构造器
的相关内容,敬请期待٩(๑>◡<๑)۶