(一)面向对象的相关概念
- 1. 什么是面向对象?
它是一种编程思想,它是基于面向对象的,强调的是以对象为基础完成各种操作。
- 2. 面向对象的三大思想特点是什么?
(1) 更符合人们的思考习惯
(2) 把复杂的事情简单化
(3) 把程序员从执行者变成指挥者
- 3. 面向对象的三大特征是
(1) 封装:隐藏实现细节
(2) 继承:不劳而获的幸福
(3) 多态:丰富多彩的世界
- 4.什么是类class? 类是属性和行为集合。
(1) 属性也叫成员变量:名词,用来描述事物的外在特征
(2) 行为也叫成员方法:动词,表示事物能做什么
(二)创建类和对象
在Scala中,用class来创建类,用new来创建对象。
object basic26 {
// 1.定义一个类
// 类名:首字母大写
// class 类名(){ }
class Student() {
// 属性
// 定义属性和定义变量一致
var name: String = "hlz"
var age: Int = 20
// 方法
// 定义方法和定义函数一样
def sayHello() = {
println(s"我是${age}岁的${name}")
}
}
def main(args: Array[String]): Unit = {
// 2.创建对象(实例化对象)
// 对象 = new()
val st1 = new Student()
// 通过 对象.属性名 来访问属性
println(st1.name)
// 通过 对象.属性名() 来调用方法
st1.sayHello()
// val st2 = new Student()
// println(st2)
}
}
(三)定义和访问成员变量
1. var/val 来定义成员变量
2. 对象可以通过对象名.成员变量的方式来访问成员变量
(四)定义和访问成员方法
在scala的类中,使用def定义成员方法
(五)理解构造器
- 构造器是一个函数,在new的时候,被自动调用,它的作用是实例化对象。
- new Class() 就是在调用构造器,或者叫调用构造函数。
- 构造函数的参数
格式: class 类名([参数列表])
构造函数
object basic27 {
// 带参数的构造器(构造函数)
class Student (var name:String = "胡胡",var age:Int = 20){
// 方法
// 定义方法和定义函数一样
def sayHello() = {
println(s"我是${age}岁的${name}")
}
}
def main(args: Array[String]): Unit = {
// new Student()
// 1.调用构造器 第五行
// 2.没有传入相关的参数 使用默认器
val st1 = new Student()
new Student()
println(st1.name)
// new Student("连连",19)
// 1.调用构造器 第五行
// 2.传入相关的参数
val st2 = new Student("连连",19)
println(st2.name)
}
}