gpt4 book ai didi

dart - 使用 “final”进行类实例化

转载 作者:行者123 更新时间:2023-12-03 03:09:06 26 4
gpt4 key购买 nike

前几天(下),我遇到了以下代码,并想知道它是否在Dart中实现了除无法更改Class实例化这一事实以外的任何有意义的事情。我确实阅读了一些有关Java的SO帖子,但是它们似乎并没有定论,也不一定适用于Dart。我不会那样编码(使用final),但是也许应该这样。在这种情况下使用“final”有什么主要意义,它能实现什么?

import 'dart:math';

final _random = new Random();

最佳答案

Dart: Up and Running:

If you never intend to change a variable, use final or const, either instead of var or in addition to a type. A final variable can be set only once; a const variable is a compile-time constant.

A local, top-level, or class variable that’s declared as final is initialized the first time it’s used.


因此,在此处使用 final有三个好处:
  • 如果某些代码错误地再次尝试设置_random,则将生成错误。
  • 对于其他程序员(或以后的同一位程序员)来说,也很清楚_random绝不打算更改。
  • _random在使用之前不会初始化,因此应用程序将启动得更快。

  • 出于这些原因,我认为这是 final的良好用法;当然,如果没有它,代码将“起作用”,但是这样更好。
    简而言之,我认为这本书提供了合理的建议:“如果您从不打算更改变量,请使用 finalconst”。

    关于dart - 使用 “final”进行类实例化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17003981/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com