Dalam Dart 2, jika Anda memanggil konstruktor seperti fungsi, tanpa new
atau const
di depan, maka itu setara dengan menggunakan new
. Jika Anda menginginkan doa konstelasi, maka Anda harus meletakkannya const
di depan.
Di dalam ekspresi const, Anda tidak perlu menulis const
lagi, dan dalam beberapa konteks yang memerlukan ekspresi const (seperti ekspresi switch case dan penginisialisasi variabel const), Anda bahkan tidak memerlukan konstanta luar.
Jadi, Anda tidak perlu menulis new
.
Tim bahasa Dart ingin mengizinkan ekspresi di mana Anda dapat menyisipkan salah satu new
atau const
dan masih memiliki pemanggilan yang benar (yaitu, konstruktor const dengan argumen konstan) ke default untuk menyisipkan const
alih-alih new
, semoga dalam pembaruan awal ke Dart 2. Untuk alasan itu , Saya sarankan menulisnya new
di depan Object()
, atau konstruktor const lainnya di mana Anda memerlukan objek untuk menjadi instance baru. Itu kasus yang sangat jarang, biasanya Anda tidak peduli dengan identitas objek tetap Anda (itulah sebabnya memasukkan const
dianggap ide yang bagus).
new
atauconst
masih diperlukan (saya tidak ingat contoh atau aturan). Mereka mungkin mencoba lagi setelah Dart 2 untuk menjadikannya opsional di mana pun.