zoukankan      html  css  js  c++  java
  • 20212022年寒假学习进度05

    今天学习scala语言。

    记录今天学习笔记:

    scala与java的关系

    scala语言特点:

    Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的
    静态类型编程语言(静态语言需要提前编译的如:Java、c、c++等,动态语言如:js)。
    1)Scala是一门多范式的编程语言,Scala支持面向对象和函数式编程。(多范式,就是多种编程方
    法的意思。有面向过程、面向对象、泛型、函数式四种程序设计方法。)
    2)Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有
    的Java类库,实现两种语言的无缝对接。
    3)Scala单作为一门语言来看,非常的简洁高效。
    4)Scala在设计时,马丁·奥德斯基是参考了Java的设计思想,可以说Scala是源于Java,同时马丁·奥
    德斯基也加入了自己的思想,将函数式编程语言的特点融合到JAVA中, 因此,对于学习过Java的同学,
    只要在学习Scala的过程中,搞清楚Scala和Java相同点和不同点,就可以快速的掌握Scala这门语言。
     
    使用上的特点
    参数声明方式:java->类型 参数名
    scala->参数名:类型
    scala没有public关键字,若不声明访问权限,那么就是公共的
    scala中没有静态语法,所以也没有static关键字
    unit类型便是scala无返回值
    scala中函数使用:方法名(参数列表):返回值类型={方法体}
    scala中方法的声明采用关键字def声明
    scala中方法实现赋值给方法声明,所以中间需要等号连接
    scala是一个完全面向对象的语言,所以没有静态语法,为了能调用静态语法(即模仿静态语法)
    采用伴生对象单例的方式调用方法。
    scala的注释方式和java相同。
    scala的常量和变量:
    var 变量名 [: 变量类型] = 初始值
    var i:Int = 10
    val 常量名 [: 常量类型] = 初始值
    val j:Int = 20
    注意:能用常量的地方不用变量
    (1)声明变量时,类型可以省略,编译器自动推导,即类型推导
    (2)类型确定后,就不能修改,说明 Scala 是强数据类型语言。
    (3)变量声明时,必须要有初始值
    (4)在声明/定义一个变量时,可以使用 var 或者 val 来修饰,var 修饰的变量可改变,
    val 修饰的变量不可改。
    var和val的声明都需要初始化赋值
    还有一点var可以在伴生类中使用
    var p:Int=_赋值
    伴生对象中使用会报错,并且必须明确变量类型
    var 修饰的对象引用可以改变,val 修饰的对象则不可改变,但对象的状态(值)
    却是可以改变的。(比如:自定义对象、数组、集合等等)
    scala的标识符的命名规范
    Scala 对各种变量、方法、函数等命名时使用的字符序列称为标识符。即:凡是自己可
    以起名字的地方都叫标识符。
    1)命名规则
    Scala 中的标识符声明,基本和 Java 是一致的,但是细节上会有所变化,有以下三种规
    则:
    (1)以字母或者下划线开头,后接字母、数字、下划线
    (2)以操作符开头,且只包含操作符(+ - * / # !等)
    (3)用反引号`....`包括的任意字符串,即使是 Scala 关键字(39 个)也可以
    package, import, class, object, trait, extends, with, type, for
    private, protected, abstract, sealed, final, implicit, lazy, override
    try, catch, finally, throw
    if, else, match, case, do, while, for, return, yield
    def, val, var
    this, super
    new
    true, false, null
    字符串输出的基本语法:
    基本语法
    (1)字符串,通过+号连接
    (2)printf 用法:字符串,通过%传值。
    (3)字符串模板(插值字符串):通过$获取变量值
    使用字符串模板时需要加一个s;
    多行字符串,在 Scala中,利用三个双引号包围多行字符串就可以实现。
    输入的内容,带有空格、\t 之类,导致每一行的开始位置不能整洁对齐。
    应用 scala 的 stripMargin 方法,在 scala 中 stripMargin 默认
    是“|”作为连接符,在多行换行的行头前面加一个“|”符号即可。
    如果需要对变量进行运算,那么可以加${}
    var p=
    s"""
    |sss
    |lll
    |name=$name
    |age=${age+2}
    """.stripMargin

     今天先学到这里明天继续学习

    作者:哦心有
    本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    SHELL编程之执行环境----邹立巍的博客
    linux内核分析系列--百度
    Linux模式设计系列( 内核与应用关联思考)
    Linux内核源代码情景分析系列
    Linux内核学习和研究及嵌入式(ARM)学习和研究的开放文档
    实验楼内核分析 +图
    《Linux内核修炼之道》 系列
    和菜鸟一起学linux内核源码之基础准备篇 系列 体系结构图
    实验楼在线算法学习
    linux-0.11内核 调试教程+GCC源代码
  • 原文地址:https://www.cnblogs.com/haobox/p/15769099.html
Copyright © 2011-2022 走看看