【问题标题】:Using the factory method to create a rectangle from points使用工厂方法从点创建矩形
【发布时间】:2013-10-29 08:37:10
【问题描述】:

为什么下面的代码无法编译?

new Rectangle( new Point(-1, -1), new Point( 1, 1));

编译器返回以下内容

顶级未捕获错误:没有构造函数“矩形”与在类“矩形”中声明的匹配参数。

NoSuchMethodError:传递给名为“矩形”的方法的参数数量不正确 接收器:类型:“矩形”类 尝试调用:矩形(“点”实例,“点”实例) 找到:矩形(动态、动态、动态、动态):#0 NoSuchMethodError._throwNew (dart:core-patch/errors_patch.dart:156)

【问题讨论】:

    标签: dart


    【解决方案1】:

    您要查找的工厂构造函数是fromPoints

    new Rectangle.fromPoints(new Point(-1, -1), new Point( 1, 1));
    

    你调用的构造函数,取4个值,分别是left、top、width和height。

    【讨论】:

    • 试过了,编译器现在说顶级未捕获错误:在类“矩形”中没有声明静态方法“fromPoints”。 NoSuchMethodError:找不到方法:'fromPoints'接收者:类型:类'Rectang
    • 您需要使用“new”关键字来调用它。
    【解决方案2】:

    你要找的是

    new Rectangle.fromPoints( new Point(-1, -1), new Point( 1, 1)) 
    

    【讨论】:

    • 试过了,编译器现在说顶级未捕获错误:在类“矩形”中没有声明静态方法“fromPoints”。 NoSuchMethodError:找不到方法:“fromPoints”接收者:类型:类“矩形”
    【解决方案3】:

    这似乎有效

    new Rectangle.fromPoints( new Point(-1, -1), new Point( 1, 1)) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-17
      • 2014-07-28
      • 2022-01-10
      • 2014-09-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多