package com.github.aldenyjr.exercicios.sistema_de_notificacao;
public abstract 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 com.github.aldenyjr.exercicios.sistema_de_notificacao;
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() {
System.out.println("""
Enviando email para: %s
Assunto: %s
Corpo: %s
""".formatted(super.getDestinatario(), this.assunto, this.getMensagem()));
}
}
package com.github.aldenyjr.exercicios.sistema_de_notificacao;
public class Sms extends Notificacao{
public Sms(String destinatario, String mensagem) {
super(destinatario, mensagem);
}
@Override
public void enviar() {
System.out.println("""
Enviando SMS para: %s
Mensagem: %s
""".formatted(super.getDestinatario(), this.getMensagem()));
}
}
package com.github.aldenyjr.exercicios.sistema_de_notificacao;
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() {
System.out.println("""
Enviando Push para: %s
Titulo: %s
Conteudo: %s
""".formatted(super.getDestinatario(), this.titulo, this.getMensagem()));
}
}
package com.github.aldenyjr.exercicios.sistema_de_notificacao;
public class SistemaDeNotificacao {
public static void main(String[] args) {
var email = new Email("aldenyjr.dev@gmail.com", "Mensagem de envio de email teste", "Olá mundo");
var sms = new Sms("(71) 98888-8888", "Olá mundo, testando envio de mensagem por SMS");
var push = new Push("usuario_app", "Você tem uma nova mensagem não lida.", "Novidade");
email.enviar();
sms.enviar();
push.enviar();
}
}
Resultado:
Enviando email para: aldenyjr.dev@gmail.com
Assunto: Olá mundo
Corpo: Mensagem de envio de email teste
Enviando SMS para: (71) 98888-8888
Mensagem: Olá mundo, testando envio de mensagem por SMS
Enviando Push para: usuario_app
Titulo: Novidade
Conteudo: Você tem uma nova mensagem não lida.