Scala学习系列一
一 scala介绍 Scala是一门以java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。
1) Scala 是一门多范式 (multi-paradigm) 的编程语言,Scala支持面向对象和函数式编程
2) Scala源代码(.scala)会被编译成Java字节码(.class),然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接。
3) Scala 单作为一门语言来看, 非常的简洁高效
4) Scala 在设计时,马丁·奥德斯基 是参考了Java的设计思想,可以说Scala是源于java,同时马丁·奥德斯基 也加入了自己的思想,
将函数式编程语言的特点融合到JAVA中, 因此,对于学习过Java的同学,只要在学习Scala的过程中,搞清楚Scala 和 Java相同点和不同点,
就可以快速的掌握Scala这门语言
二 windows安装sacla开发环境:
Scala需要Java运行时库,安装Scala需要首先安装JVM虚拟机并配置好,推荐安装JDK1.8
在 http://www.scala-lang.org/ 下载Scala2.11.8程序安装包
安装&配置
1. 配置JDK的环境变量 JAVA_HOME
2. 配置Scala的环境变量SCALA_HOME
3. 将Scala安装目录下的bin目录加入到PATH环境变量
在PATH变量中添加:%SCALA_HOME%\bin
4. 在命令行窗口中输入“scala”命令打开scala解释器(REPL)
出现下面的内容表示Scala已经正确的执行
idea中配置:
idea开发scala第一个项目:
首先创建一个java的maven项目。然后配置:
开发第一个程序:
就可以创建了:
看运行结果:
scala是一个完全的面向对象语言,来解释下代码具体含义:
package com.cxy.scala object Abc{
//scala编译源码中包含了main方法,再编译后自动形成public static main
//scala再编译源码时候,会生成两个字节码文件,静态的main方法执行另外一个字节码文件中
//成员main方法
//scala是完全面向对象的语音,没有静态方法,只能通过模拟僧从静态方法
//编译时,将当前类生成一个特殊的类,,Abc$,然后创建对象来调用这个对象的main方法 //一般情况下,将加$符号的类对象,称之为“半生对象”
//半生对象,就可以通过类名来访问,来模拟java中的静态方法
//伴生对象,使用object声明 //public static void main (String[] agrs){
// 方法体
// } //scala中没有public关键字,默认所有的访问类权限都是公共的
//void, static,也是没有这个关键字, //scala 中使用unit来模拟void关键字 //scala中声明方法采用关键字def
//方法后面的小括号,参数类表,
//scala中,参数类表的声明方式和java中不一样 //scala只关注变量名。java中:String 参数名
//scala中 参数名:类型 //java中方法得声明和方法体直接连接
//scala中将方法的声明和方法题是通过等号连接 //scala中将方法的返回值类型防止再方法声明的后面使用冒号连接的
def main(args: Array[String]): Unit = {
println("Hello World")
}
}
看代码中的注释,就可以明白了
所以不做太多的阐述了
1) 打开IDEA工具,如图:点击Configure
Scala学习系列一的更多相关文章
- Scala学习系列(一)——Scala为什么是大数据第一高薪语言
为什么是Scala 虽然在大数据领域Java的使用更普及,Python也有后来居上的势头,但Scala一直有着不可动摇的地位.我们熟悉的Spark,Kafka,Flink都是由Scala完成了其核心代 ...
- scala学习系列二
一 scala语言开发注意事项: 1 Scala程序的执行入口是main()函数 2 Scala语言严格区分大小写. 3 Scala方法由一条条语句构成,每个语句后不需要分号(Scala语言会在每行后 ...
- Scala学习系列(三)——入门与基础
本课程源码共享于 https://github.com/tree1123/learning-scala 首先,打开IDEA编辑器的SbtExampleProject项目,我们将在这个项目下进行练习 本 ...
- scala学习笔记
一 入门 为了增加编程趣味和技能,学习新语言,体会函数式编程和简易的并发管理模型,了解日渐活跃的Spark,尝试下Scala.Scala = Scalable language,作者是Martin O ...
- 大数据学习系列之五 ----- Hive整合HBase图文详解
引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...
- 大数据学习系列之六 ----- Hadoop+Spark环境搭建
引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合 ...
- 大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解
引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单 ...
- Git学习系列之如何正确且高效地将本地项目上传到Github(图文详解)
不多说,直接上干货! 首先你需要一个Github账号,所以还没有的话先去注册吧! https://github.com/ 见 如何走上更高平台分享传递干货知识:(开通个人Github面向开源及私有软件 ...
- Git学习系列之Windows上安装Git详细步骤(图文详解)
前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windo ...
随机推荐
- vue订阅者模式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- chrome安装json美化软件 JSONView
安装效果如下: 安装步骤: 1.下载地址: github地址:https://github.com/gildas-lormeau/JSONView-for-Chrome 2.解压文件 3.打开谷歌浏览 ...
- postman的基本用法,请求,断言,环境变量
postman基本用法 Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件. 它提供功能强大的 Web API & HTTP 请求调试. 它能够发送任何类型的HTT ...
- 从java到python
从java到python 从事java开发主要是web方向,这个方向已经相当成熟,基本你想开发什么样的app,总能百度出来相关的项目或者github中搜索到,你需要做的就是掌握调试的技巧,基本你能想到 ...
- Pandas分类(category)数据处理
分类(Category)数据:直白来说,就是取值为有限的,或者说是固定数量的可能值.例如:性别.血型 指定数据类型构建分类数据 dtype="category" 以血型为例,创建一 ...
- ITester软件测试小栈,快来点击领取你的能量值!
日供一卒,功不唐捐,这不是一个非正常更新的ITester软件测试小栈,不定期分享软件测试相关,包括功能.接口.自动化.性能.专项.测试开发,简历指点,面试助攻,群而不党,和而不同,如趋同,且同行.
- docker安装mysql,tomcat,并且在tomcat可以访问到mysql
1.uname -an 查看当前系统版本 2.yum -y install docker 下载安装docker 3.service docker start 启动docker服务 4.docker ...
- 通俗易懂了解React生命周期
1.前言 学习React时,学习组件的生命周期是非常重要的,了解了组件的"从无到有再到无"所经历的各个状态,对日后写高性能的组件会有很大的帮助. 2.生命周期图 React的生命周 ...
- 在线WEB开发编辑器,edt.df5d.com
在线WEB开发编辑器,http://edt.df5d.com 本地服务端下载 : https://pan.baidu.com/s/11SlcoU_D-KbzGFbs-_9Dpg 即可加载本地磁盘,也可 ...
- 关于Jvm的见解(二)
栈管运行,堆管存储!!! 栈呢,也叫作栈内存,主要管java程序的运行,在线程创建时创建,生命周期和线程一致,只要线程一结束,该栈就被GC,是线程私有的.基本类型的变量和对象的引用数据类型的变量都在栈 ...