Почему у Connection нет метода executeQuery - PullRequest
0 голосов
/ 05 ноября 2018

Почему метод executeQuery() недоступен в классе Connection?

Если он был доступен, мы можем легко вызвать метод executeQuery, используя Connection Object.

Так не можем ли мы расширить класс Statement до Connection класса, чтобы достичь этого?

1 Ответ

0 голосов
/ 05 ноября 2018

Это нарушает Принцип единой ответственности

принцип, который гласит, что каждый модуль или класс должен нести ответственность за одну часть функциональности, предоставляемой программным обеспечением, и эта ответственность должна быть полностью заключена в класс.

Класс соединения обрабатывает соединение и не решает / не знает, как выполнить запрос (одиночный, пакетный, шаблон ...)

...