package br.com.comunicacao;
public class Notificacao {
private String destinatario;
private String mensagem;
public Notificacao(String destinatario, String mensagem) {
this.destinatario = destinatario;
this.mensagem = mensagem;
}
public String getDestinatario() {
return destinatario;
}
public String getMensagem() {
return mensagem;
}
public void enviar() {
}
}
package br.com.comunicacao;
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 enviar() {
String email = """
Enviando Email para: %s
Assunto: %s
Corpo: %s
""".formatted(getDestinatario(), assunto, getMensagem());
System.out.println(email);
}
}
package br.com.comunicacao;
public class SMS extends Notificacao {
public SMS(String destinatario, String mensagem) {
super(destinatario, mensagem);
}
@Override
public void enviar() {
String sms = """
Enviando SMS para: %s
Mensagem: %s
""".formatted(getDestinatario(), getMensagem());
System.out.println(sms);
}
}
package br.com.comunicacao;
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 enviar() {
String push = """
Enviando Push para: %s
Título: %s
Conteúdo: %s
""".formatted(getDestinatario(), titulo, getMensagem());
System.out.println(push);
}
}
package br.com.comunicacao;
public class Principal {
public static void main(String[] args) {
Notificacao email = new Email("cliente@exemplo.com",
"Aproveite nossos descontos esta semana.",
"Promoção especial!");
Notificacao sms = new SMS("(11) 98765-4321",
"Sua fatura foi paga com sucesso.");
Notificacao push = new Push("usuario_app",
"Você tem uma nova mensagem não lida.",
"Novidade!");
email.enviar();
sms.enviar();
push.enviar();
}
}
Saída:
Enviando Email para: cliente@exemplo.com
Assunto: Promoção especial!
Corpo: Aproveite nossos descontos esta semana.
Enviando SMS para: (11) 98765-4321
Mensagem: Sua fatura foi paga com sucesso.
Enviando Push para: usuario_app
Título: Novidade!
Conteúdo: Você tem uma nova mensagem não lida.