学过Java的都知道Java是面向对象的,学习dart语言我们知道dart同样也是面向对象的。
Dart是面向对象的、类定义的、单继承的语言。它的语法类似C语言。
一、我们看下Java中方法的使用最常用的就是main方法例如:
java方法的语法:
访问修饰符 返回值类型 方法名(参数列表){
方法体
}
访问修饰符可以是默认的也可以是private、public、producted在不同的情况下,使用不同的修饰符,再次不做详细介绍
返回值可以是void 无返回值,也可以是有具体的返回值
参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开
方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式
当需要调用方法执行某个操作时,可以先创建类的对象(即new需要调用的方法所在的类),然后通过 对象名.方法名
dart语言中方法的使用
这个就是dart中的一个方法;Java中所有main方法,是整个程序的入口
;dart同样具有主函数不同的是dart中没有修饰符。
dart后台输出语句有点像c语言的写法;直接是print("helloWord");java直接是System.out.println();
方法语法:返回值 函数的名字 (参数列表){
方法体
}
//也可以省略返回值设成void也可以什么都不写直接省略如下:
带命名参数的方法:
var name= testName(name:"美丽的向日葵",age:"45");
print(name);
String testName({String name,String age}){ return '我叫$name今年$age岁';}如果命名参数在使用中不设置参数则默认为null
命名参数在使用中参数需和定义的方法参数一致否则将会报以下错误:如下
正确的用法
var name= testName(name:"美丽的向日葵",age:"45");print(name); String testName({String name,String age}){ return '我叫$name今年$age岁';}有问题的用法:
var name= testName("美丽的向日葵","45");print(name); String testName({String name,String age}){ return '我叫$name今年$age岁';}使用以上用法需稍微注意。
默认参数值的用法:
print(defaultValue(firstName:'僵小鱼的夏天')); defaultValue({String firstName,String secordName='luncy'}){return '$firstName $secordName';}除此之外,dart方法的使用还有简洁的写法如下:
如果函数只是简单的返回一个表达式的值,可以使用箭头语法 =>desc;
它等价于{return desc;}
例如:
print(testQuickUese('僵小鱼'));
testQuickUese(name) => 'hello $name';
方法中 的可选参数:
Dart中支持两种可选参数:命名可选参数和位置可选参数
但两种可选不能同时使用如:命名可选参数使用大括号{},默认值用冒号或位置可选参数使用方括号[],默认值用等号=在命名可选参数的函数中,大括号外的a为必填参数
大括号内的参数可以指定0个或多个,当不指定参数时默认是null;并且与顺序无关,在调用函数的时候需要指明参数名
以上是dart语言中方法的使用。
二、dart语言中的基础知识
1、一切都是对象,每个对象都是类的实例(包括null),所有类都继承自object
2、指定数据类型和编译时常量可以提高运行效率
3、dart没有作用域,以“_”开头
4、表示方法或者属性为私有的未被初始化的都会被赋值为:null
dart语言中的关键字:
var:变量
dynamic:不指定类型
final:常量
const:编译时常量
其他的关键字如下:
dart语言中的代码注释:
单行://
多行:/内容/或者/* 内容*/
三、dart语言中的类、接口、枚举的使用
dart是面向对象的编程语言,每一个对象是一个类的实例,所有类都源于Object,创建一个对象,你可以使用 new 关键字构建一个类,类的使用如下:
1)、带参数的构造函数
var popole=new People('儒雅的小土豆', '23', '女');
class People { String name; num age; String gender; People(this.name, this.age, this.gender);//构造函数 }
2)、无参构造函数
class People { String name; num age; String gender;// People(this.name, this.age, this.gender);//构造函数}var people=new People(); people.name='李玉刚'; people.age='23'; assert(people.gender');//如果是fals会报错 print(people.gender);类初始化顺序:
初始化器列表
超类的无参数构造函数
主类的无参数构造函数
Dart中的类和接口是统一的,类即接口,你可以继承一个类,也可以实现一个类(接口),自然也包含了良好的面向对象和并发编程的支持。
3)、dart语言中抽象类的使用
4)、枚举类型的使用
枚举是一种用来代表一个固定数量的常量的特殊类;声明一个枚举类型需要使用关键字 enum ;
例如:enum Season { spring, summer, auturn, winter }
枚举类型有以下限制 你不能在子类中混合或实现一个枚举。 你不能显式实例化一个枚举。以上便是dart基础知识的使用。