Scala对象和类解释和用法示例详解

本文概述

与Java不同, scala是一种纯面向对象的编程语言。它允许我们创建对象和类, 以便你可以开发面向对象的应用程序。


Object

对象是现实世界的实体。它包含状态和行为。笔记本电脑, 汽车, 手机是现实世界中的对象。对象通常具有两个特征:

1)状态:对象的数据值称为其状态。

2)行为:对象执行的函数称为其行为。

Scala中的对象是类的实例。也称为运行时实体。


类是模板或蓝图。也称为相似类型的对象的集合。

在scala中, 一个类可以包含:

  1. 数据成员
  2. 会员方法
  3. 建设者
  4. 嵌套类
  5. 超级班级信息等

你必须初始化类中的所有实例变量。没有默认范围。如果未指定访问范围, 则它是公共的。必须有一个定义了main方法的对象。它为你的程序提供了起点。在这里, 我们创建了一个类的示例。


类的Scala示例示例

class Student{
    var id:Int = 0;	        				// All fields must be initialized
    var name:String = null;
}
object MainObject{
    def main(args:Array[String]){
        var s = new Student()				// Creating an object
        println(s.id+" "+s.name);
    }
}

输出

0 null

类的Scala示例Example2

在scala中, 你也可以创建这样的类。在这里, 构造函数是在类定义中创建的。这称为主要构造函数。

class Student(id:Int, name:String){		// Primary constructor
    def show(){
        println(id+" "+name)
    }
}
object MainObject{
    def main(args:Array[String]){
        var s = new Student(100, "Martin")	// Passing values to constructor
        s.show()				// Calling a function by using an object
    }
}

输出

100 Martin

Scala维护学生记录的班级示例

class Student(id:Int, name:String){
    def getRecord(){
        println(id+" "+name);
    }
}

object MainObject{
    def main(args: Array[String]){
        var student1 = new Student(101, "Raju");
        var student2 = new Student(102, "Martin");
        student1.getRecord();
        student2.getRecord();
    }
}

输出

101 Raju
102 Martin

Scala匿名对象

在scala中, 你可以创建匿名对象。没有引用名称的对象称为匿名对象。当你不想进一步重用匿名对象时, 最好创建匿名对象。


Scala匿名对象示例

class Arithmetic{
    def add(a:Int, b:Int){
        var add = a+b;
        println("sum = "+add);
    }
}

object MainObject{
    def main(args:Array[String]){
        new Arithmetic().add(10, 10);

    }
}

输出

Sum = 20
微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?