首页 > 其他分享 >Scala基础知识点

Scala基础知识点

时间:2024-10-09 22:22:47浏览次数:9  
标签:语句 知识点 Scala 对象 基础 关键字 单例 类型

1.Scala编译后文件的后缀名为.class。

2.Scala有两种类型的变量,一种是使用关键字var声明的变量,值是可变的;另一种是使用关键字val声明的变量,也叫常量,值是不可变的。

3.Null是所有引用类型的子类型,主要用途是与其他JVM语言互操作,几乎不在Scala代码中使用。

4.Scala中可以使用def语句和val语句定义函数,而定义方法只能使用def语句。

5.Scala方法的返回值类型可以不写,编译器可以自动推断出来,但是对于递归函数来说,必须要指定返回类型。

6.用于计算数组长度的是length()方法。

7.在Scala中,获取元组中的值是通过下划线加角标来获取的。

8.Scala中的类不需要关键字public声明为公共的,并且一个Scala源文件中可以拥有多个类。

9.Scala中提供了object这个关键字用来实现单例模式,使用关键字object创建的对象为单例对象。

10.Scala提供了强大的模式匹配机制,最常见的模式匹配就是match case语句。

11.Scala提供了样例类,它可以对模式匹配进行优化,提高匹配的速率。

12.在Scala中,集合有三大类分别是List、Set以及Map。

13.Scala的元组是对多个不同类型对象的一种简单封装,它将不同的值用小括号括起来,并用逗号作分隔,即表示元组。

14.Scala中的Trait可以对定义的字段和方法进行实现,Java中的接口却不可以。

15.Scala中,定义定长数组需要使用new关键字,而定义变长数组时,则需要导包import scala.collection.mutable.ArrayBuffer。

16.在Scala中,在一个源文件中有一个类和一个单例对象,若单例对象名与类名相同,则把这个单例对象称作伴生对象(companion object)。

17.无论是在Scala中还是Java中,类都是对象的抽象,而对象都是类的具体实例;类不占用内存,而对象占用存储空间。

18.scala中,如果子类要重写一个父类中的非抽象方法(有方法体),则必须使用override关键字,否则会出现语法错误。

19.Scala语言的特性包含面向对象的、函数式编程的、静态类型的、可扩展的、可交互的。

20.在Scala数据类型层级结构的底部有两个数据类型,分别是Nothing和Null。Nothing是所有类型的子类型,也称为底部类型。Null是所有引用类型的子类型。

标签:语句,知识点,Scala,对象,基础,关键字,单例,类型
From: https://blog.csdn.net/weixin_74304418/article/details/142797356

相关文章

  • mysql基础汇总
    命令行操作启动数据库服务:netstartmysql;进入mysql:mysql-uroot-p;退出mysql:shutdown;基础操作库操作:查看所有库:showdatabases;创建库:createdatabase库名;使用库:use数据库名;删除库:dropdatabase数据库名;表操作:查看所有表:showtables;查看表结构:desc......
  • 实验一 现代C++基础编程
    1.实验任务1task1.cpp1//现代C++标准库、算法库体验2//本例用到以下内容:3//1.字符串string,动态数组容器类vector、迭代器4//3.函数模板、const引用作为形参56#include<iostream>7#include<string>8#include<vector>9#include<algorithm>......
  • 实验1 现代C++基础编程
    任务1:源代码task1.cpp1#include<iostream>2#include<string>3#include<vector>4#include<algorithm>56usingnamespacestd;78//声明9//模板函数声明10template<typenameT>11voidoutput(constT&c);1213......
  • 实验2_C语言分支与循环基础应用编程
    实验一#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5#defineN1397#defineN2476#defineN321intmain(){intcnt;intrandom_major,random_no;srand(time(NULL));cnt=0;while(cnt<N){......
  • 实验2 C语言分支与与循环基础应用编程——1
    一、实验目的1.能正确使用if语句实现分支结构2.能正确使用while语句、do...while语句实现循环结构3.能在具体问题场景中正确区分、使用continue和break4.能灵活、组合使用c语句编程解决简单应用问题 二、实验准备1.分支语句if和循环语句while、do...while的用法......
  • DAY27||回溯算法基础 | 77.组合| 216.组合总和Ⅲ | 17.电话号码的字母组合
    回溯算法基础知识一种效率不高的暴力搜索法。本质是穷举。有些问题能穷举出来就不错了。回溯算法解决的问题有:组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规......
  • Go语言基础语法
    Go语言基础语法上节课关于程序启动的回答。//关于Goland中执行的问题//1、包下执行(一个main函数来执行,如果有多个,无法直接执行)//2、Go文件执行(直接启动即可,在main函数外面执行)注释我们为什么写注释?一个项目,是很多组成的。写的时候,你能看懂的。半年、一年(......
  • 计算机基础知识:mfc140u.dll无法继续执行代码
    1.mfc140u.dll简介1.1定义与作用mfc140u.dll是MicrosoftFoundationClasses(MFC)库中的一个动态链接库文件,它是MFC库在Unicode版本中的一个特定实现。MFC是微软为Windows平台开发的一套C++类库,封装了众多WindowsAPI函数,简化了Windows应用程序的开发过......
  • 实验二 C语言分支与循环基础应用编程
    实验二C语言分支与循环基础应用编程实验任务1——抽学号#include<stdio.h>#include<stdlib.h>#include<time.h>#defineN5#defineN1397#defineN2476#defineN321intmain(){ intcnt; intrandom_major,random_no; srand(time(NULL));//以当前系统......
  • 自学黑客技术,看这5本好书就够了!【自学黑客技术该看什么书】零基础入门到精通,收藏这篇
    想自学黑客技术,看这5本好书就可以了,直接给你省去2万块钱的学费!第一本,《黑客入门》不管你有没有基础,你都可以用这本书来打开黑客世界的大门,里面包含了各种新手应该掌握的技术和工具。第二本,《KaliLinux高级渗透测试》不会kali的黑客不是好黑客,卡里就像一个武器库,里面......