Kuinka toteuttaa tehdasmenetelmä Java-sovelluksessa



Tämä artice antaa sinulle yksityiskohtaisen ja kattavan tiedon siitä, miten Factory-menetelmä voidaan toteuttaa Java-sovelluksessa esimerkkien avulla.

Luokat ja esineet ovat pääosa mikä tekee siitä yhden tärkeimmistä ohjelmointikielistä työskennellä. Tässä artikkelissa käsitellään Java-tehdasmenetelmää seuraavassa järjestyksessä:

Mikä on tehdasmenetelmä Java-sovelluksessa?





Tehtaan malli tai Tehdasmenetelmä Java-kielellä sanoo, että alaluokat ovat vastuussa luokan objektin luomisesta. Toisin sanoen, tehdasmenetelmäkuvio on luova kuvio, jota käytetään luomaan objekteja tehdasmenetelmillä tarvitsematta määritellä luodun objektin tarkkaa luokkaa. Tehtaan menetelmiä kutsutaan myös Virtuaaliset rakentajat .

Tehdasmenetelmä Java-logossa



Tehdasmenetelmissä luomme objekteja altistamatta asiakkaille luomislogiikkaa. Asiakas käyttää samaa yhteistä käyttöliittymää uuden tyyppisten objektien luomiseen.

Tehdasmenetelmän edut

  • Alaluokat valitsevat luotavien objektien tyypin. Tehdasmenetelmä sallii tämän.

    miten tehdä paketti java
  • Poistamalla tarpeen sitoa sovelluskohtaisia ​​luokkia koodissa, se edistää löysä kytkin .



Tehdasmenetelmän käyttö

  • Niitä käytetään, kun luokassa ei ole aavistustakaan siitä, mitä alaluokkia vaaditaan.

  • Niitä käytetään, kun luokka haluaa alaluokkien määritellä objektit, jotka on luotava.

  • Vanhempaluokat valitsevat alaluokkien kohteiden luomisen, käytämme tehdasmenetelmiä.

Milloin käytetään tehdasmenetelmää?

Löysä kytkentä otetaan käyttöön luokkien välillä tehdasmenetelmilläjoka on yksi tärkeimmistä periaatteista ja jota tulisi soveltaa arkkitehtuuria suunniteltaessa. Arkkitehtuuristamme voidaan tehdä joustavampi ja vähemmän herkkä ottamalla löysä kytkentä ohjelman arkkitehtuuriin.

Tässä on esimerkkikoodi

käyttöliittymä ImageReader {DecodedImage getDecodeImage ()} luokka DecodedImage {private String image public DecodedImage (String image) {this.image = image} @Override public String toString () {return image + ': is decoded'}} class GifReader toteuttaa ImageReader { private DecodedImage decodedImage public GifReader (String image) {this.decodedImage = new DecodedImage (image)} @Override public DecodedImage getDecodeImage () {return decodedImage}} class JpegReader implementates ImageReader {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage {public DecodedImage} DecodedImage (image)} @Override public DecodedImage getDecodeImage () {return decodedImage}} public class FactoryMethodDemo {public static void main (String [] args) {DecodedImage decodedImage ImageReader reader = null String image = 'image.jpeg' String .substring (image.indexOf ('.') + 1, (image.length ())) if (format.equals ('gif')) {lukija = new GifReader (image)} if (format.equals ('jpeg ')) {lukija = uusi JpegReader (kuva)} vakuuttaa lukija! = null decodedImage = reader.getDecodeImage () System.out.println (decodedImage)}}

LÄHTÖ:

Koodin selitys

Tämä koodi osoittaa, kuinka tehdasmenetelmä määritetään. Luodaan useita luokkia, joista kukin tekee tietyn tehtävän kuvan dekoodaamiseksi. Meillä on kuljettajaluokka nimeltä FactoryMethodDemo.

Annamme argumentin, jonka on oltava .jpeg tai .gif jne. Laajennuksen perusteella kuva luodaan luokkaobjekti joko jpeg-lukijalle tai gif-lukijalle ja suoritetaan vastaavasti.

Tämän avulla olemme päässeet loppuun tämän tehdasmenetelmän Java-artikkeliin. Toivon, että sait käsityksen näistä menetelmistä.

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssi on suunniteltu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä.