This article describes multiple Java design patterns. Share it for your reference, as follows:
1. Multiple design pattern definition
Multiple design patterns are the existence of multiple object instances for external applications, which are metaphor for database connection pooling.
2. Multiple-case static class diagram
3. Multiple-case pattern code implementation
1. Multiple-case mode core class
package com.demo.multipleton;import java.util.ArrayList;/** * Multiple case pattern* * @author * */public class Multipleton { // Number of multiple cases private static final int N = 10; // Container to store N instance objects private static ArrayList<Multipleton> list = new ArrayList<Multipleton>(N); // Serial number identification of each object private int no; // Private constructor prevents external applications from instantiating private Multipleton(int no) { this.no = no; System.out.println("-- Create Multipleton Object[" + no + "]!"); } // Instantiate N object instances static { // Add Multipleton object instance for (int i = 0; i < N; i++) { list.add(new Multipleton(i)); } } /** * Random getRandomInstance() { // Get random number int num = (int) (Math.random() * N); // Get object instance in list return list.get(num); } public int getNo() { return no; } public void setNo(int no) { this.no = no; }}2. Multiple-case mode client
package com.demo;import com.demo.multipleton.Multipleton;/** * Client application* * @author * */public class MultipletonClient { /** * @param args */ public static void main(String[] args) { // Get Multipleton object instance Multipleton multiton = Multipleton.getRandomInstance(); System.out.println("multipleton:" + multipleton.getNo()); // Get Multipleton object instance Multipleton multiton2 = Multipleton.getRandomInstance(); System.out.println("multipleton2:" + multipleton2.getNo()); // Compare whether two objects are the same object instance if (multipleton == multipleton2) { System.out.println("--This is the same object!"); } else { System.out.println("--This is a different object!"); } }}3. Operation results
-- Create Multipleton Object[0]!
-- Create Multipleton Object[1]!
-- Create Multipleton Object[2]!
-- Create Multipleton Object[3]!
-- Create Multipleton Object[4]!
-- Create Multipleton Object[5]!
-- Create Multipleton Object[6]!
-- Create Multipleton Object[7]!
-- Create Multipleton Object[8]!
-- Create Multipleton Object[9]!
Multipleton:2
Multipleton2:2
--This is the same object!
4. From the above program running results, two conclusions can be drawn
① The process of instantiating N instance objects is only performed once.
② Randomly obtain the Multipleton object.
For more Java-related content, readers who are interested in this site can view the topics: "Introduction and Advanced Tutorial on Java Object-Oriented Programming", "Tutorial on Java Data Structure and Algorithm", "Summary of Java Operation DOM Node Skills", "Summary of Java File and Directory Operation Skills" and "Summary of Java Cache Operation Skills"
I hope this article will be helpful to everyone's Java programming.