Skip to content

Instantly share code, notes, and snippets.

@cassianomaia
Created June 18, 2020 20:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cassianomaia/cf9045964e61f443aef2c1a50f32fa47 to your computer and use it in GitHub Desktop.
Save cassianomaia/cf9045964e61f443aef2c1a50f32fa47 to your computer and use it in GitHub Desktop.
Dart playground
class Person {
String _name;
int _age;
int money;
Person(this._name, this._age, this.money);
Person.named({String name, int age = 25}) {
this._name = name;
this._age = age;
this.money = 0;
}
Person.newBorn(String name) {
this._name = name;
this._age = 0;
this.money = 0;
}
String get name {
return this._name;
}
set name (String name) {
this._name = name;
}
int get age {
return this._age;
}
set age(int age) {
if (age >= 0 && age <= 105) {
this._age = age;
} else {
this._age = 0;
}
}
}
class Dog {
String _name;
String _sound;
Person _owner;
Dog(this._name, this._sound, this._owner);
@override
String toString() {
return '{name: ${this._name}, owner: ${this._owner._name}}';
}
}
double addNumbers(double num1, double num2) {
return num1 + num2;
}
void printPerson(Person p) {
print('{name: ${p._name}, age: ${p._age}}, money: ${p.money}}');
}
void main() {
var p1 = Person.named(name: 'Felipe', age: 30);
var baby = Person.newBorn('Enzo');
var p2 = Person('Xaxu', 26, 0);
printPerson(p1);
printPerson(p2);
printPerson(baby);
p1.money = 200;
printPerson(p1);
// We made this to prove that we can access the private value from person inside the same file
var doge = Dog('Filó', 'au au', p1);
print(doge);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment