Middle
Rääkige mulle Flutteri konstantsetest konstruktoritest.
sobes.tech AI
Vastus AI-lt
Konstant konstruktoris võimaldab luua objekti, mida kompilaator saab arvutada kompileerimise ajal ja taaskasutada. See parandab jõudlust ja vähendab mäe kasutust.
Peamised omadused:
- Märgitud võtmesõnaga
const. - Kõik klassi väljad, mis määratletud sellega, peavad olema
final. - Kõik konstruktorargumendid peavad olema konstantsed või omama vaikimisi konstantsed väärtused.
- Eksemplari loomisel selle konstruktoriga kasutatakse võtmesõna
const.
Näide:
class Point {
final double x;
final double y;
const Point(this.x, this.y); // Konstantne konstruktor
}
void main() {
// Need kaks objekti esindavad sama eksemplari mälus
const p1 = Point(1.0, 2.0);
const p2 = Point(1.0, 2.0);
// See objekt on uus eksemplar
final p3 = Point(1.0, 2.0);
print(identical(p1, p2)); // Väljund: true
print(identical(p1, p3)); // Väljund: false
}
const konstruktorite kasutamise eelised:
- Jõudlus: Objekte luuakse ainult üks kord ja neid taaskasutatakse.
- Mälu kasutamise vähendamine: Väheneb loodavate objektide arv.
- Muutumatud:
constkonstruktoriga loodud objektid on muutumatud.
Piirangud:
- Klass ei tohi omada tehaste konstruktorit (
factory). - Klass ei tohi sisaldada muutuvaid välju.
Konstantseid konstruktorid kasutatakse sageli muutumatute Flutter vidinate, nagu Text, Icon, Padding, SizedBox, loomiseks, mis on hea tava jõudluse optimeerimiseks kasutajaliideses.