大数据技术之Scala
======第一篇:Scala编程语言=====
Scala语言的面向对象(二)内部类(嵌套类)
我们可以在一个类的内部再定义一个类,如下:
我们在Student类中,再定义了一个Course类用于保存学生选修的课程。
开发一个测试程序进行测试:
Scala代码整体实现:
package mianxiangduixiang.lei
import scala.collection.mutable.ArrayBuffer
/**
* 内部类
*
* 需求:定义一个学生类,同时保存学生的成绩信息
*/
class QianTaoLeiStudents2 {
//定义一个学生的属性
private var stuName:String="Tom"
private var stuAge:Int=20
//定义一个数组,用于保存学生的课程成绩
private var courseList=new ArrayBuffer[Course]()
//定义一个函数,用于添加学生的课程成绩
def addNewCourse(courseName:String,grade:Int): Unit ={
//创建课程的成绩信息
var c=new Course(courseName,grade)
//添加到学生对象中
courseList+=c
}
/**
* 定义课程类
*
* 主构造器:把属性写在类名后面
*/
class Course(var couseName:String,var grade:Int){
}
}
object QianTaoLeiStudents2{
def main(args: Array[String]): Unit = {
//测试程序-创建学生对象
var s=new QianTaoLeiStudents2
//给学生添加课程信息
s.addNewCourse("Chiness",90)
s.addNewCourse("Math",80)
s.addNewCourse("English",70)
println(s.stuName+"\t"+s.stuAge)
println("--------课程信息-------")
for(c<-s.courseList)println(c.couseName+"\t"+c.grade)
}
}