Как реализовать фабричный метод в Java



Это руководство предоставит вам подробные и всесторонние знания о том, как реализовать фабричный метод в Java с примерами.

Классы и объекты - основная часть что делает его одним из основных языков программирования для работы. В этой статье мы обсудим, что такое фабричный метод в Java, в следующем порядке:

Что такое фабричный метод в Java?





Заводской образец или Заводской метод в Java говорит, что подклассы отвечают за создание объекта класса. Другими словами, паттерн фабричный метод - это шаблон создания, который используется для создания объектов с использованием фабричных методов без необходимости указывать точный класс создаваемого объекта. Заводские методы также называются Виртуальные конструкторы .

def __init__ питон

Заводской метод в логотипе Java



В фабричных методах мы создаем объекты, не раскрывая клиентам логику создания. Тот же самый общий интерфейс используется клиентом для создания объектов нового типа.

Преимущества заводского метода

  • Тип создаваемых объектов выбирается подклассами. Заводской метод позволяет это.

  • Устраняя необходимость связывать классы, специфичные для приложения, в коде, он способствует Слабая связь .



Использование фабричного метода

  • Они используются, когда класс не знает, какие подклассы требуются.

  • Они используются, когда класс хочет, чтобы подклассы определяли объекты, которые необходимо создать.

  • Родители классов выбирают создание объектов подклассов, мы используем фабричные методы.

приведение типа double к int java

Когда использовать заводской метод?

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

Вот пример кода

interface ImageReader {DecodedImage getDecodeImage ()} class DecodedImage {private String image public DecodedImage (String image) {this.image = image} @Override public String toString () {return image + ': is decoded'}} класс GifReader реализует ImageReader { private DecodedImage decodedImage public GifReader (String image) {this.decodedImage = new DecodedImage (image)} @Override public DecodedImage getDecodeImage () {return decodedImage}} класс JpegReader реализует ImageReader {private DecodedImage decodedImage public JpegReader (String image) {decodedImage public JpegReader (String image) {decodedImage public JpegReader (String image) {decodedImage DecodedImage (изображение)} @Override public DecodedImage getDecodeImage () {return decodedImage}} открытый класс FactoryMethodDemo {public static void main (String [] args) {DecodedImage decodedImage ImageReader reader = null String image = 'image.jpeg' String format = image .substring (image.indexOf ('.') + 1, (image.length ())) if (format.equals ('gif')) {reader = new GifReader (image)} if (format.equals ('jpeg ')) {читатель = новый JpegReader (изображение)} assert reader! = null decodedImage = reader.getDecodeImage () System.out.println (decodedImage)}}

ВЫВОД:

Объяснение кода

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

как делать полномочия в Java

Мы передаем аргумент, который должен иметь расширение .jpeg или .gif и т. Д. На основе расширения изображения создается объект класса либо для чтения jpeg, либо для чтения GIF, и выполнение выполняется соответственно.

На этом мы подошли к концу статьи о фабричном методе в Java. Надеюсь, вы получили представление об этих методах.

Проверьте от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учащихся по всему миру. Курс обучения и сертификации по Java J2EE и SOA от Edureka предназначен для студентов и профессионалов, которые хотят стать Java-разработчиками.