Kuidas rakendada tehasemeetodit Java-s



See artikkel annab teile üksikasjalikud ja põhjalikud teadmised tehasemeetodi Java rakendamise kohta koos näidetega.

Klassid ja objektid on põhiosa mis muudab selle üheks peamiseks programmeerimiskeeleks, millega töötada. Selles artiklis käsitleme Java-tehase meetodit järgmises järjekorras:

Mis on Java tehasemeetod?





Tehase muster või Tehase meetod Java-s ütleb, et alamklassid vastutavad klassi objekti loomise eest. Teisisõnu, tehase meetodi muster on loomemuster, mida kasutatakse objektide loomiseks tehasemeetodite abil, ilma et peaks täpsustama loodud objekti täpset klassi. Tehasemeetodeid nimetatakse ka Virtuaalsed konstruktorid .

ühenda sortimisalgoritm c ++

Tehase meetod Java logos



Tehasemeetodites loome objektid klientidele loomisloogikat eksponeerimata. Sama ühist liidest kasutab klient uut tüüpi objektide loomiseks.

Tehase meetodi eelised

  • Loodavate objektide tüübi valivad alaklassid. Tehase meetod lubab seda.

  • Kõrvaldades vajaduse siduda koodis rakenduspõhised klassid, edendab see lahtiühendus .



Tehase meetodi kasutusalad

  • Neid kasutatakse siis, kui klassil pole aimugi, milliseid alaklasse vaja on.

  • Neid kasutatakse siis, kui klass soovib, et alamklassid määraksid objektid, mis tuleb luua.

  • Lapsevanemaklassid valivad alaklasside objektide loomise, meie kasutame tehasemeetodeid.

jenkins vs nukk vs peakokk

Millal kasutada tehasemeetodit?

Loose Coupling on klasside vahel sisse viidud tehase meetodi mustritegamis on üks olulisemaid põhimõtteid ja seda tuleks rakendada arhitektuuri kujundamisel. Meie arhitektuuri saab muuta paindlikumaks ja vähem habras, kui juurutame programmi arhitektuuris lahti sidumise.

Siin on näite kood

liides ImageReader {DecodedImage getDecodeImage ()} klass DecodedImage {private String image public DecodedImage (String image) {this.image = image} @Override public String toString () {return image + ': is decoded'}} klass GifReader rakendab ImageReader { privaatne DecodedImage decodedImage public GifReader (stringipilt) {this.decodedImage = new DecodedImage (image)} @Override public DecodedImage getDecodeImage () {return decodedImage}} class JpegReader implementates ImageReader {private DecodedImage {private DecodedImage DecodedImage (image)} @Orride 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')) {reader = new GifReader (image)} if (format.equals ('jpeg ')) {lugeja = uus JpegReader (pilt)} kinnita lugeja! = null decodedImage = reader.getDecodeImage () System.out.println (decodedImage)}}

VÄLJUND:

Koodi selgitus

See kood näitab, kuidas tehasemeetod on seadistatud. Luuakse mitu klassi, kus igaüks teeb konkreetse pildi dekodeerimise ülesande. Meil on autojuhtide klass nimega FactoryMethodDemo.

mis on binaarotsing javas

Edastame argumendi, mille laiend peab olema .jpeg või .gif jne. Laienduse põhjal luuakse pilt klassi objekt kas jpeg-lugejale või gif-lugejale ning vastavalt sellele tehakse ka käitus.

Sellega jõuame selle Java meetodi tehase meetodi lõpuni. Loodan, et said neist meetoditest aru.

Vaadake autor Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik koosneb enam kui 250 000 rahulolevast õppijast ja mis levib üle kogu maailma. Edureka Java J2EE ja SOA koolitus- ja sertifitseerimiskursus on mõeldud õpilastele ja spetsialistidele, kes soovivad olla Java arendajad.