当前位置: 首页 > 网络应用技术

DART系列:您是主要网站,使用扩展来扩展类

时间:2023-03-06 11:18:50 网络应用技术

  通常,一个类是扩展的,需要继承此类。这就是大多数Java或其他面向对象的语言中要做的。

  但是有时扩展类并不特别容易使用。首先,在某些语言中,某些类被禁止扩展。即使可以扩展,扩展程序后的类是新类,而不是原始父级,因此在使用过程中可能存在某些类型的转换问题过程。

  那么,如何在DART中解决此问题?

  2.7之后,DART引入了扩展以扩展类方法。

  如何扩展?让我们举个例子。

  我们可以将字符串转换为int,并调用int的解析方法,如下所示:

  但是,通过INT类通常不直观。我们希望在字符串类中提供一种TOINT方法。您可以直接调用并将字符串转换为int。

  但是不幸的是,字符串不提供toint方法,因此我们可以通过扩展扩展字符串:

  如果此文件的名称是string_to_number.dart,那么我们可以这样使用:

  DART中国方法最方便的扩展是,只要您引入相应的LIB,您甚至在使用LIB扩展时都不知道。

  当然,并非所有类都可以使用扩展名进行扩展。例如,动态类型不能扩展。

  但是使用VAR类型,只要可以推断出这种类型,就可以使用扩展扩展。

  由于可以扩大自由B,因此可能会发生API冲突。因此如何解决API冲突?

  例如,我们需要使用两个lib扩展名,即extension1.dart和extension2.dart。但是两个扩展文件都定义了parseint方法来展开字符串。

  如果同时引用它,将会出现问题。

  目前,您可以使用显示或隐藏来限制使用哪些扩展文件的方法。

  另一种情况是显示呼叫扩展名,如下所示:

  通过扩展名称进行区分。

  如果两个扩展名的名称相同,则可以通过前缀区分:

  实现扩展非常简单,语法如下:

  以下是扩展字符串的示例:

  扩展也可以扩展通用参数:

  以上实现将扩展到列表,添加Getter,操作符号和拆分方法。

  以上是2.7的新功能,即类的扩展。

  最受欢迎的解释,最深的干货,最简单的教程,您不知道的许多技巧正在等待您发现!

  欢迎注意我的公共帐户:“程序的事情”,了解技术并更好地了解您!