美文网首页
基础语法及数据类型

基础语法及数据类型

作者: 默云客 | 来源:发表于2018-09-04 14:59 被阅读0次

    基本概念定义

    • 对象 - 对象有状态和行为。一个对象是类的一个实例。例如 - 狗有状态:颜色,名称,品种,它行为有:摇摆,吠叫和吃东西。
      (java中,对象有属性和方法,大同小异,同样一个对象是一个类的实例)
    • 类 - 可以将类定义为描述与该类相关的行为/状态的模板/蓝图。
    • 方法 - 一个方法基本上是一种行为。一个类可以包含很多方法。将逻辑代码写入的方法中,数据在方法中操纵并且执行所有的动作。
    • 字段 - 每个对象都有其唯一的一组实例变量,称为字段。对象的状态是由分配给这些字段的值来创建的。
    • 闭包 - 闭包是一个函数,其返回值取决于在此函数之外声明的一个或多个变量的值。
    • 特征 - 特征(Traits)封装了方法和字段定义,然后可以通过将它们混合到类中来重用它们,特征(Traits)用于通过指定支持的方法的签名来定义对象类型。

    基础语法(与java中大同小异)

    • 区分大小写 - Scala是区分大小写的,比如标识符Hello和hello在Scala中表示不同的含义(对象)。
    • 类名称 - 对于所有类名,第一个字母应为大写。如果使用多个单词来形成类的名称,则每个内部单词的第一个字母应该是大写。
      示例 - class MyFirstScalaClass,class Employee*类等。
    • 方法名称 - 所有方法名称应以小写字母开头。如果使用多个单词形成方法的名称,则每个内部单词的第一个字母应为大写。
      示例 - def myMethodName(),def getName()等。
    • 程序文件名 - 程序文件的名称应与对象名称完全匹配。保存文件时,您应该使用对象名称保存它(记住Scala是区分大小写的),并将.scala附加到文件名称的末尾。 (如果文件名和对象名不匹配,则程序将不会编译)。
      示例 - 假设HelloWorld是对象名称。 那么文件应该保存为HelloWorld.scala。
    • def main(args:Array [String]) - Scala程序从main()方法开始,这是每个Scala程序的强制性部分。

    scala标识符

     所有Scala组件都需要名称。用于对象,类,变量和方法的名称称为标识符。关键字不能用作标识符,标识符区分大小写。Scala支持四种类型的标识符。

    • 字母数字标识符

    字母数字标识符以字母或下划线开头,后面可以有更多的字母,数字或下划线。 $字符是Scala中的保留关键字,不应在标识符中使用。

    以下是合法的字母数字标识符 :
    age, salary, _value, __1_value
    以下是非法标识符 :
    $salary, 123abc, -salary

    • 运算标识符

    运算符标识符由一个或多个运算符字符组成。运算符字符是可打印的ASCII字符,如:+,:,?,~或#。
    Scala编译器将在内部将操作符标识符转换成具有嵌入式$字符的合法Java标识符。例如,标识符:->将被内部表示为$colon$minus$greater。

    • 混合标识符

    混合标识符由字母数字标识符组成,后面跟着一个下划线和一个操作符标识符。
    以下是合法的混合标识符 :
    unary_+, myvar_=
    这里,一元_+用作方法名称定义一个一元的+运算符,而myvar_=用作方法名定义一个赋值运算符(运算符重载)。

    • 字面识别符

    一个文字标识符是一个随意的字符串,包含在后面的勾号(...)中
    以下是合法的文字标识符 :
    'x' '<clinit>' 'yield'

    scala关键字

    abstract case catch class
    def do else extends
    false final finally for
    forSome if implicit import
    lazy match new Null
    object override package private
    protected return sealed super
    this throw trait Try
    true type val Var
    while with yield
    - : = =>
    <- <: <% >:
    # @

    scala数据类型

    Scala与Java具有相同的数据类型,具有相同的内存占用和精度。

    序号 数据类型 说明
    1 Byte 8位有符号值,范围从-128至127
    2 Short 16位有符号值,范围从-32768至32767
    3 Int 32位有符号值,范围从-2147483648至2147483647
    4 Long 64位有符号值,范围从-9223372036854775808至9223372036854775807
    5 Float 32位IEEE 754单精度浮点值
    6 Double 64位IEEE 754双精度浮点值
    7 Char 16位无符号Unicode字符。范围从U+0000到U+FFFF
    8 String 一个Char类型序列
    9 Boolean 文字值true或文字值false
    10 Unit 对应于无值
    11 Null null或空引用
    12 Nothing 每种其他类型的亚型; 不包括无值
    13 Any 任何类型的超类型; 任何对象的类型为Any
    14 AnyRef 任何引用类型的超类型

    上面列出的所有数据类型都是对象。Scala中没有类似Java中那样的原始类型。 这意味着您可以调用Int,Long等方法。

    相关文章

      网友评论

          本文标题:基础语法及数据类型

          本文链接:https://www.haomeiwen.com/subject/ndhgwftx.html