静态检查

Baileys2020年1月1日
大约 2 分钟...

read1 静态检查

1.课程目标

学习静态类型 了解好的软件应该具有的三个属性

2.类型

java有五种原始类型:int、long、boolean、double、char.

java也有对象类型,例如:String、BigInteger.

从java的传统来说,原始类型一般采用小写字母,对象类型的起始字母用大写.

java中有一些操作符可以对不同类型的对象进行操作,这是我们就称之为可重载(overloaded),例如java中算数运算符+、-、*、/ 都是可重载的。 一些函数也是可重载的,大多数编程语言都有不同程度的重载性。

3.静态类型

java是一种静态类型的语言。所有变量的类型在编译的时候就已经直知道了(程序还没有运行),所以编译器也可以推测出每一个表达式的类型。例如,如果a和b是int类型的,那么编译器就可以知道a+b的结果也是int类型的。

在动态类型的语言中(例如python),这种类型检查发生在程序运行时候。

静态类型是静态检查的一种,检查发生在编译的时候。

4.静态检查、动态检查、无检查

静态检查:bug在程序运行前发现,通常可以发现语法错误、错误的名字、参数的个数不对、参数的类型不对、错误的返回类型等错误。静态检查倾向于类型错误,与特定值无关的错误。

动态检查:bug在程序运行中发现,通常可以发现非法的变量值、无法表示的返回值、越界访问、使用null对象解引用等错误。

无检查:编程语言本身不帮助你发现错误,必须通过特定条件,检查代码正确性。

5.变化的值、可被赋值的改变

final提供了不变索引的静态检查

final:java为我们提供了不变的索引,只要变量被初始化后就不能被再次赋值--只要在声明的时候加上final。

在IDEA中测试final,发现编译器会报错:无法将值赋给final变量'e'

屏幕截图 2021-06-06 002636.png

评论
Powered by Waline v2.6.1