Construtores (Métodos e Classes)
- Para definir parâmetro opcional
void _sendMessage({String? text, PickedFile? img}) async {}
-
Caso algum tenha que ser obrigatório podemos utilizar a palavra
requiredatrás do tipo do parâmetro para obrigar a passar -
Definir parâmetro nomeado e requerido
void _sendMessage({required String text, required PickedFile img}) async {}
Parâmetros nomeados
//onde a posição tem que ser seguida
Saudacoes('Adolfo')
void Saudacoes(String nome, [bool mostrarAgora =true]){
}
//onde deve ser nomeado
Saudacoes('Adolfo', sep: '*')
void Saudacoes(String nome, {bool mostrarAgora =true, String sep = '-'}){
}
//onde deve ser nomeado e uma das prop é obrigatório passar
Saudacoes('Adolfo', sep: '*')
void Saudacoes(String nome, {bool mostrarAgora =true, required String sep = '-'}){
}
- Construtor de classe segue a mesma maneira para colocar parâmetros
{required String nome, required bool verdadeiro}
- Maneiras de criar o construtor de uma classe
class Pessoa{
Pessoa({required this.nome, required this.idade, this.casado = false});
String? nome;
int? idade;
bool casado = false;
double? dinheiro;
double? _dinheiro;
Pessoa.casada({required this.nome, required this.idade}){
casado = true;
}
Pessoa.solteira({required this.nome, required this.idade}){
casado = false;
}
set dinheiro(double? valor){
_dinheiro = valor;
}
double? get dinheiro(){
return _dinheiro;
}
}
- Construtores nomeados