Created
June 18, 2020 20:35
-
-
Save cassianomaia/cf9045964e61f443aef2c1a50f32fa47 to your computer and use it in GitHub Desktop.
Dart playground
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 { | |
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