คลาสและออบเจ็กต์เป็นส่วนหลักของ ซึ่งทำให้เป็นหนึ่งในภาษาโปรแกรมหลักที่ใช้งานได้ ในบทความนี้เราจะพูดถึง Factory Method ใน Java ตามลำดับต่อไปนี้:
Factory Method ใน Java คืออะไร?
รูปแบบโรงงาน หรือ วิธีการโรงงานใน Java กล่าวว่าคลาสย่อยมีหน้าที่สร้างออบเจ็กต์ของคลาส กล่าวอีกนัยหนึ่ง รูปแบบวิธีการโรงงาน เป็นรูปแบบการสร้างสรรค์ที่ใช้ในการสร้างวัตถุโดยใช้วิธีการจากโรงงานโดยไม่ต้องระบุคลาสที่แน่นอนของวัตถุที่สร้างขึ้น เรียกอีกอย่างว่าวิธีการโรงงาน ตัวสร้างเสมือน .
ใน Factory Methods เราสร้างวัตถุโดยไม่เปิดเผยตรรกะการสร้างให้กับลูกค้า ไคลเอ็นต์ใช้อินเทอร์เฟซทั่วไปเดียวกันเพื่อสร้างอ็อบเจ็กต์ชนิดใหม่
ข้อดีของวิธีโรงงาน
ประเภทของวัตถุที่จะสร้างจะถูกเลือกโดยคลาสย่อย วิธีการของโรงงานช่วยให้สิ่งนี้
โดยไม่จำเป็นต้องผูกคลาสเฉพาะแอปพลิเคชันในโค้ดจึงส่งเสริม ข้อต่อหลวม .
การใช้วิธีการของโรงงาน
ใช้เมื่อคลาสไม่รู้ว่าคลาสย่อยใดที่จำเป็น
ใช้เมื่อคลาสต้องการให้คลาสย่อยระบุอ็อบเจ็กต์ที่ต้องการสร้าง
c ++ goto คำสั่ง
ชั้นเรียนผู้ปกครองเลือกการสร้างวัตถุของคลาสย่อยเราใช้วิธีการโรงงาน
ควรใช้ Factory Method เมื่อใด
Loose Coupling ถูกนำมาใช้ระหว่างคลาสโดย Factory Method Patternsซึ่งเป็นหนึ่งในหลักการที่สำคัญที่สุดและควรนำมาใช้ในการออกแบบสถาปัตยกรรม สถาปัตยกรรมของเราสามารถทำให้มีความยืดหยุ่นมากขึ้นและเปราะบางน้อยลงโดยการนำการเชื่อมต่อแบบหลวมในสถาปัตยกรรมโปรแกรม
นี่คือรหัสตัวอย่าง
interface ImageReader {DecodedImage getDecodeImage ()} class DecodedImage {private String image public DecodedImage (String image) {this.image = image} @Override public String toString () {return image + ': is decoded'}} class GifReader ใช้ ImageReader { Private DecodedImage decodedImage public GifReader (อิมเมจสตริง) {this.decodedImage = new DecodedImage (image)} @Override public DecodedImage getDecodeImage () {return decodedImage}} คลาส JpegReader ใช้ ImageReader {private DecodedImage decodedImage jpeg DecodedImage (image)} @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 (รูปภาพ)} if (format.equals ('jpeg ')) {ผู้อ่าน = new JpegReader (image)} assert reader! = null decodedImage = reader.getDecodeImage () System.out.println (decodedImage)}}
เอาท์พุท:
คำอธิบายรหัส
รหัสนี้สาธิตวิธีการตั้งค่าจากโรงงาน มีการสร้างชั้นเรียนหลายชั้นโดยแต่ละชั้นทำงานเฉพาะในการถอดรหัสภาพ เรามีคลาสไดรเวอร์ที่เรียกว่า FactoryMethodDemo
เราส่งผ่านอาร์กิวเมนต์ซึ่งจะต้องมีนามสกุลเป็น. jpeg หรือ. gif เป็นต้นตามส่วนขยายของภาพวัตถุคลาสจะถูกสร้างขึ้นสำหรับโปรแกรมอ่าน jpeg หรือโปรแกรมอ่าน gif และดำเนินการตามนั้น
ด้วยเหตุนี้เราจึงมาถึงตอนจบของบทความ Factory Method ใน Java ฉันหวังว่าคุณจะเข้าใจวิธีการเหล่านี้
ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก หลักสูตรการฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ออกแบบมาสำหรับนักเรียนและผู้เชี่ยวชาญที่ต้องการเป็น Java Developer
java วิธีการโคลนวัตถุ