Scala-Scala语言的面向对象(二)内部类(嵌套类)

Posted on 2020-05-31 22:22  MissRong  阅读(155)  评论(0)    收藏  举报

大数据技术之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)
  }
}

 

 

 

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3