package br.com.nadson.desafiosc9.modelo;
public class Notificacao {
private String destinatario, mensagem;
public Notificacao(String destinatario, String mensagem) {
this.destinatario = destinatario;
this.mensagem = mensagem;
}
public String getDestinatario() {
return destinatario;
}
public void setDestinatario(String destinatario) {
this.destinatario = destinatario;
}
public String getMensagem() {
return mensagem;
}
public void setMensagem(String mensagem) {
this.mensagem = mensagem;
}
public void enviarNotificacao(){
System.out.println("Enviando notificação para "+this.destinatario+": "+this.mensagem);
}
}
package br.com.nadson.desafiosc9.modelo;
public class Email extends Notificacao{
private String assunto;
public Email(String destinatario, String mensagem, String assunto) {
super(destinatario, mensagem);
this.assunto = assunto;
}
@Override
public void enviarNotificacao() {
System.out.println("Enviando email para " + this.getDestinatario() + "\nAssunto: " + this.assunto + "\nCorpo: " + this.getMensagem());
}
}
package br.com.nadson.desafiosc9.modelo;
public class Push extends Notificacao {
private String titulo;
public Push(String destinatario, String mensagem, String titulo) {
super(destinatario, mensagem);
this.titulo = titulo;
}
@Override
public void enviarNotificacao() {
System.out.println("Enviando Push para " + this.getDestinatario() + "\nTítulo: " + this.titulo + "\nConteudo: " + this.getMensagem());
}
}
package br.com.nadson.desafiosc9.modelo;
public class SMS extends Notificacao{
public SMS(String destinatario, String mensagem) {
super(destinatario, mensagem);
}
@Override
public void enviarNotificacao() {
System.out.println("Enviando SMS para " + this.getDestinatario() + "\nMensagem: " + this.getMensagem());
}
}
package br.com.nadson.desafiosc9.principal;
import br.com.nadson.desafiosc9.modelo.Email;
import br.com.nadson.desafiosc9.modelo.Notificacao;
import br.com.nadson.desafiosc9.modelo.Push;
import br.com.nadson.desafiosc9.modelo.SMS;
import java.util.List;
public class SistemaDeNotificacao {
public static void main(String[] args) {
List<Notificacao> notificacoes= List.of(
new Email("nasdsonjhony@gmail.com", "Seu pedido foi enviado com sucesso!", "Confirmação de Pedido"),
new SMS("+5511999999999", "Seu código de verificação é 123456"),
new Push("Usuario123", "Você tem uma nova mensagem!", "Nova Mensagem")
);
for (Notificacao notificacao : notificacoes) {
notificacao.enviarNotificacao();
System.out.println("-----");
}
}}