美文网首页
02Dart:并不支持构造函数的重载

02Dart:并不支持构造函数的重载

作者: tanhh | 来源:发表于2018-10-31 15:31 被阅读0次

Java 代码中,使用了重载构造函数的方法,该方法在 Java 中很普遍,重载的构造函数和之前的构造函数具有相同的方法名,但是在方法的参数个数或者参数类型上有些许不同。Dart 并不支持构造函数的重载,而采用了构造方法使用可选类型参数

import 'dart:math';

class Rectangle {

  int width;

  int height;

  Point origin;

// 这个构造方法使用了可选类型参数。

  Rectangle({this.origin = const Point(0, 0), this.width = 0, this.height = 0});

//  this.origin, this.width 和 this.height 使用了 Dart 提供的简便方法来直接对类中的实例变量进行赋值。

// this.origin, this.width 和 this.height 嵌套在闭合的花括号中 ({}) ,用来表示它们是可选的命名参数。

// this.origin = const Point(0, 0) 这样的代码表明给实例变量 origin 提供了默认的值 Point(0,0),默认值必须是在编译器就可以确定的常量。上述代码中的构造方法为三个实例变量都提供了默认参数。

  @override

String toString() =>

      'Origin: point: (${origin.x}, ${origin.y}), width: $width, height: $height';

}

main() {

  print(Rectangle(origin: const Point(10, 20), width: 100, height: 200));

  print(Rectangle(origin: const Point(10, 10)));

  print(Rectangle(width: 200));

  print(Rectangle());

}

相关文章

  • 02Dart:并不支持构造函数的重载

    Java 代码中,使用了重载构造函数的方法,该方法在 Java 中很普遍,重载的构造函数和之前的构造函数具有相同的...

  • Swift构造函数-重载构造函数(二)

    重载构造函数 Swift 中支持函数重载,同样的函数名,不一样的参数类型 注意事项 如果重载了构造函数,但是没有实...

  • # 重载构造函数

    Swift 中支持函数重载,同样的函数名,不一样的参数类型 注意事项 如果重载了构造函数,但是没有实现默认的构造函...

  • java05(构造函数重载与构造代码块)

    构造函数的重载: 构造函数的命名就是类名 java构造函数可以重载很多次。构造方法重载具体好处就是:扔进来...

  • Swift-重写与重载的使用和比较

    1.重载: 函数名相同,参数名;参数类型;参数个数不同 重载函数并不仅仅局限于构造函数 函数重载是面相对象程序设计...

  • Swift开发中构造函数几点说明

    一、Swift支持overload重载 二、构造函数 带有override前缀的init都是重写继承了父类的构造函...

  • 关于构造函数和析构函数

    构造函数与析构函数是类中特殊的成员函数,构造函数支持函数重载,而析构函数只能是一个无参函数。它们不可定义返回值,调...

  • c++第三讲 类和对象

    目标: 类的默认成员函数 构造函数 析构函数 拷贝构造函数 赋值操作符重载 默认拷贝函数与赋值运算符重载 cons...

  • 构造函数;重载构造函数

    构造函数介绍: 定义类使用class,swift可以没有父类,但有些功能无法使用,譬如:KVC 类里可以定义: 可...

  • C++引用和拷贝构造函数

    引用是支持运算符重载语法的基础,也为函数的传入和传出控制提供了便利。 拷贝构造函数,是一种特殊的构造函数,需要用引...

网友评论

      本文标题:02Dart:并不支持构造函数的重载

      本文链接:https://www.haomeiwen.com/subject/ogeatqtx.html