简介
- Go
一种静态强类型,需要编译执行的编程语言 - Java
一种需要经过编译执行,面向对象思想的编程语言 - Python
一种高层次的结合了解释性、编译性、互动性和面向对象的脚本语言 - JavaScript
一种可以插入html页码交给浏览器执行的无需编译的轻量级脚本语言
特点
- Go
- 静态
- 编译型
- 内存管理、数组安全、编译迅速
- Java
- 静态
- 编译型
- 强类型
- Python
- 动态
- 编译型
- 弱类型
- JavaScript
- 动态
- 解释型
3.弱类型
场景
- Go
主要使用在分布式系统应用方面 - Java
主要使用在web服务器方面 - Python
主要使用在互联网爬虫数据抓取或者数据处理方面 - JavaScript
主要使用在html浏览器中展示页面
基础概念
Go
标记
Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号,
即代码中每个片段就是一个标记行分隔符
在 Go 程序中,一行代表一个语句结束。
每个语句不需要像 C 家族中的其它语言一样以分号 ; 结尾注释
注释不会被编译,分为行注释和块注释标识符
标识符用来命名变量、类型等程序实体
一个标识符实际上就是一个或是多个字母(AZ和az)数字(0~9)、下划线_组成的序列
第一个字符必须是字母或下划线而不能是数字。字符串连接
Go 语言的字符串可以通过 + 实现关键字
语言中设计的保留字,不允许被使用
Go 代码中会使用到的 25 个关键字或保留字
Go 语言还有 36 个预定义标识符空格
Go 语言中变量的声明必须使用空格隔开格式化
Go 语言中使用 fmt.Sprintf 格式化字符串并赋值给新串
Java
标识符
和Go的定义基本一样修饰符
主要用来修饰类中的方法和属性,分为
访问控制修饰符 default, public , protected, private
非访问控制修饰符 final, abstract, static, synchronized变量
分为:
类变量,为静态变量,是属于当前类共同拥有,容易发生安全问题
成员变量,为非静态变量,是属于当前的类实例对象拥有,也会发生安全问题
局部变量,一般存在于方法局部,用完就会被回收掉数组
一种储存在堆上的对象,可以保存多个同类型变量枚举
枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的 bug关键字
同Go语言定义,但是内容不同注释
同Go语言定义及分类-
继承
- 概念:
java中一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。 - 重点:
- java中只支持单继承
- 继承注重于方法的扩展
- 概念:
-
接口
- 概念
接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。派生类需要实现接口并重写方法 - 重点
- java中支持多实现
- 实现注重于方法的重写
- 概念
Python
标识符
python中的标识符不能以数据开头,但是可以以下划线开头,和java,Go中都不一样
以下划线开头的代表了特殊的意义,
单下划线代表不能直接访问的类属性,需通过类提供的接口进行访问
双下划线开头的 代表类的私有成员,
双下划线开头和结尾的 代表 Python 里特殊方法专用的标识关键字
定义和java,go一样,但是内容不同行和缩进
python中的代码块,取消{}包裹,然后使用严格的缩进格式来代替。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行,不然会报错多行语句
和go一样,一行代表一句引导
字符串的标识可以用单引号,双引号,三引号来表示,三引号一般用来表示多行文字注释
python中的注释采用#开头
JavaScript
字面量
即java中的常量或者数值,是一个固定的值变量
一个可变的数据值操作符
算术操作符
赋值操作符
逻辑运算符语句
一行程序,需要以分号结束注释
使用//进行注释关键字
同样的概念
变量类型
Go
- 布尔类型
- 数字类型
- 字符串类型
- 派生类型
- 数组
- 指针
- 结构化
- Channel
- 函数类型
- 切片类型
- 接口类型
- Map类型
Java
- 布尔类型
- 字符串类型
- 数字类型(整型,浮点型)
- 自定义类型
Python
- 数字类型
- 字符串类型
- 元组类型
- 列表类型
- 字典类型
JavaScript
- 字符串类型
- 数字类型
- 布尔类型
- 对空类型
- 未定义类型
- Symbol
- 对象类型
- 数组类型
- 函数类型