20 阅读2分钟

一、面向对象的相关概念

1. 什么是面向对象?

它是一种编程思想,它是基于面向对象的,强调的是以对象为基础完成各种操作。

2. 面向对象的三大思想特点是什么?

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

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

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

3. 面向对象的三大特征是

(1) 封装

(2) 继承

(3) 多态

举例: 封装,隐藏实现细节;继承,不劳而获的幸福;多态:丰富多彩的世界。

4. 什么是类“class”? 类是“属性”和“行为”的集合。

(1) 属性也叫成员变量:名词,用来描述事物的外在特征

(2) 行为也叫成员方法:动词,表示事物能做什么

举例:学生有姓名和年龄这些是属性,学生要学习,要吃饭这些是行为。

 

二、 创建类和对象

在Scala中,用class来创建类,用new来创建对象。

创建一个Person类,并创建它的对象,然后将对象打印到控制台上。

1. 使用IDEA创建一个scala项目,并创建object类。

2. 设置项目名,包名,项目地址。注意不要使用中文,空格,特殊符号作为名字及路径名。 3.

class Student(var name: String, var age: Int) {
 println("构造函数被调用...")

 def sayHi(): Unit = {
  println(s"我是${name}, 我今年${age}")
 }

 // 辅助构造函数
 // (1)它的名字就是this
 // (2)它的体的第一句代码就必须调用 主构造函数 this("无名氏", 0)
 def this() {
  this("无名氏", 0)
  println("辅助构造函数1被调用...")
 }

 def this(name: String) {
  this(name, 0)
  println("辅助构造函数2被调用...")
 }
}
def main(args: Array[String]): Unit = {
 // 创建一个学生对象
 // val stu1 = new Student("小范", 18)
 // 调用对象的方法
 // stu1.sayHi()

 // stu1.age = 19
 // 调用对象的方法
 // stu1.sayHi()

 // 这里没有设置参数,它会调用辅助构造函数
 val stu2 = new Student()
 stu2.sayHi()

 // 这里没有设置参数,它会调用辅助构造函数
 val stu3 = new Student("小昕")
 stu3.sayHi()
}