Dart之旅01:基础程序
2019-02-11 本文已影响0人
suikaJY
本系列文章全部为官方Dart之旅的总结或者翻译,有些并不常用的地方直接原文了。这部分只是Dart特性的一个概览和介绍,如果有Java或者JavaScript语言的开发经验可以通过这系列文章快速了解Dart的语法特性,相关深入的部分都会以链接标识。由于我是一个Android开发,会使用kotlin和php,也会一点ios,所以解释的时候可能会有xxx类似java8,或者xxx和kotlin很像的说法。如有错误,还请评论指正,多谢。
基础程序
下面的是一个基础程序:
// Define a function.
printInteger(int aNumber) {
print('The number is $aNumber.'); // Print to console.
}
// This is where the app starts executing.
main() {
var number = 42; // Declare and initialize a variable.
printInteger(number); // Call a function.
}
这里用到以下知识点:
- 注释
- 整形
- 42字面量
- print()打印
- 字符串模板
- 主函数
- var变量声明,动态类型
重要概念:
- 一切皆为对象,即使是数字,函数,他们都继承于Object类
- 动态类型推断,dart虽然是强类型语言,但支持类型推断。
- dart支持范型
- dart支持顶层方法(类似于
main()
)他们其实就是一个静态方法,在类中是成员方法,类外就是静态方法,在方法中也可以创建方法,这些和kotlin一样。 - dart支持顶层变量,和顶层函数一样,顶层变量等同于静态变量,类变量则为field或者properties
- 和java不同,dart没有关键字
public
、protected
和private
,如果类名或变量名(官方简称为标识符)以下划线开头,那么这个标识符就是私有的 - 标识符由字母和下划线开头,后续可以用字母数字下划线。
- dart含有语句和表达式,表达式类似
condition ? expr1 : expr2
这在运行时有值,而if..else
则可以没有值 - dart工具可以汇报两种问题:warning和error。警告会指示你哪里的代码可能不会工作。而它们不会阻止程序的运行。错误则分为编译时和运行时,一个编译时错误会阻止代码啊被执行。而一个运行时错误就会导致一个异常。
关键字
关键字 | |||
---|---|---|---|
abstract | dynamic | implements | show |
as | else | import | static |
assert | enum | in | super |
async | export | interface | switch |
await | extends | is | sync |
break | external | library | this |
case | factory | mixin | throw |
catch | false | new | true |
class | final | null | try |
const | finally | on | typedef |
continue | for | operator | var |
covariant | Function | part | void |
default | get | rethrow | while |
deferred | hide | return | with |
do | if | set | yield |