compile-time
根据词义,是编译时。
常说的compile-time errors发生在我们开发中,代码编译器检查出的错误,一般分为syntax errors(语法错误)和 semantic errors(语义错误)
关于syntax errors,一个例子如下:
int a,b:
本该以 ; 结尾,但是错误的用了:,一个很初级的错误。
关于semantic errors,一个例子如下:
当我们为一个变量c赋值。
a+b=c;
实际正确的方式为:
=a+b;
其他runtime错误,如:
String string_common_tip_a='hello';
compiler可能会提示 The variable name 'string_common_tip_a' isn't a lowerCamelCase identifier. 很明显,变量命名是不规范的。
runtime
语义化为运行时的错误,一般为在compile-time时未发现的错误,或者是在运行前不可预期的错误,如:
int a = someApi.get();
int c=1000/a;
// 运行时 a=0,分母为0,造成计算公式非法。
SomeData a=someApi.get();
print(a.someProp);
// a=null。
// 无法获取null的someProp属性。
当然网络问题等也可以造成runtime错误。
结束~~~~
结尾吐槽下,这个博客的文本编辑器又bug,希望可以做下优化。。。。
参考文档: