Created with <3 with dartpad.dev.
Last active
September 21, 2022 13:09
-
-
Save Chralu/d03ae04c0a8ac96747a40cdf46d662a6 to your computer and use it in GitHub Desktop.
Flutter101 - Class portée des propriétés
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Person { | |
final String firstname; | |
final String lastname; | |
final double? weight; | |
Person({ | |
required this.firstname, | |
required this.lastname, | |
this.weight, | |
}); | |
@override | |
String toString() { | |
if (weight == null) return "$firstname $lastname"; | |
return "$firstname $lastname ($weight kg)"; | |
} | |
} | |
class MorePrivatePerson { | |
final String _firstname; | |
final String _lastname; | |
final double? _weight; | |
MorePrivatePerson({ | |
required String firstname, | |
required String lastname, | |
double? weight, | |
}) : _firstname = firstname, | |
_lastname = lastname, | |
_weight = weight; | |
@override | |
String toString() { | |
if (_weight == null) return "$_firstname $_lastname"; | |
return "$_firstname $_lastname ($_weight kg)"; | |
} | |
} | |
void main() { | |
final johnDoe = Person( | |
firstname: "John", | |
lastname: "Doe", | |
); | |
// Les propriétés internes sont accessibles | |
print(johnDoe.firstname); | |
final johnnyBegood = MorePrivatePerson( | |
firstname: "Johnny", | |
lastname: "Begood", | |
); | |
// ⚠️ Les propriétés privées sont accessibles car | |
// nous sommes dans le même fichier que la classe. | |
// Les propriétés privées ne sont pas visibles | |
// depuis les autres fichiers. | |
print(johnnyBegood._firstname); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment