/
telnov.ob
/
patterns
Обзор
Документация
Войти
/
telnov.ob
/
patterns
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Bridge/java/Bridge.java
68 строк
1 KB
georgedem
Bridge
15 авг 2022, 22:49
15 авг 2022, 22:49
30968b3
Код
Авторство
О чём код?
interface IDataReader{ void read(); } class DataBaseReader implements IDataReader{ @Override public void read(){ System.out.print("data from the database "); } } class FileReader implements IDataReader{ @Override public void read(){ System.out.print("data from the file "); } } abstract class Sender{ protected IDataReader reader; public Sender(IDataReader dataReader){ reader = dataReader; } public void setDataReader(IDataReader dataReader){ reader = dataReader; } public abstract void send(); } class EmailSender extends Sender{ public EmailSender(IDataReader dataReader){ super(dataReader); } @Override public void send(){ reader.read(); System.out.println("sent by email"); } } class TelegramBotSender extends Sender{ public TelegramBotSender(IDataReader dataReader){ super(dataReader); } @Override public void send(){ reader.read(); System.out.println("sent by telegram bot"); } } public class Main{ public static void main(String[] args){ Sender sender = new EmailSender(new DataBaseReader()); sender.send(); sender.setDataReader(new FileReader()); sender.send(); sender = new TelegramBotSender(new DataBaseReader()); sender.send(); } }