Finished Multiton example.
This commit is contained in:
		| @@ -3,5 +3,14 @@ package com.iluwatar; | ||||
| public class App { | ||||
| 	 | ||||
|     public static void main( String[] args ) { | ||||
|     	System.out.println("KHAMUL=" + Nazgul.getInstance(NazgulName.KHAMUL)); | ||||
|     	System.out.println("MURAZOR=" + Nazgul.getInstance(NazgulName.MURAZOR)); | ||||
|     	System.out.println("DWAR=" + Nazgul.getInstance(NazgulName.DWAR)); | ||||
|     	System.out.println("JI_INDUR=" + Nazgul.getInstance(NazgulName.JI_INDUR)); | ||||
|     	System.out.println("AKHORAHIL=" + Nazgul.getInstance(NazgulName.AKHORAHIL)); | ||||
|     	System.out.println("HOARMURATH=" + Nazgul.getInstance(NazgulName.HOARMURATH)); | ||||
|     	System.out.println("ADUNAPHEL=" + Nazgul.getInstance(NazgulName.ADUNAPHEL)); | ||||
|     	System.out.println("REN=" + Nazgul.getInstance(NazgulName.REN)); | ||||
|     	System.out.println("UVATHA=" + Nazgul.getInstance(NazgulName.UVATHA));    	 | ||||
|     } | ||||
| } | ||||
|   | ||||
							
								
								
									
										36
									
								
								multiton/src/main/java/com/iluwatar/Nazgul.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								multiton/src/main/java/com/iluwatar/Nazgul.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| package com.iluwatar; | ||||
|  | ||||
| import java.util.Map; | ||||
| import java.util.concurrent.ConcurrentHashMap; | ||||
|  | ||||
| public class Nazgul { | ||||
|  | ||||
| 	private static Map<NazgulName, Nazgul> nazguls; | ||||
| 	 | ||||
| 	private NazgulName name; | ||||
|  | ||||
| 	static { | ||||
| 		nazguls = new ConcurrentHashMap<>(); | ||||
| 		nazguls.put(NazgulName.KHAMUL, new Nazgul(NazgulName.KHAMUL)); | ||||
| 		nazguls.put(NazgulName.MURAZOR, new Nazgul(NazgulName.MURAZOR)); | ||||
| 		nazguls.put(NazgulName.DWAR, new Nazgul(NazgulName.DWAR)); | ||||
| 		nazguls.put(NazgulName.JI_INDUR, new Nazgul(NazgulName.JI_INDUR)); | ||||
| 		nazguls.put(NazgulName.AKHORAHIL, new Nazgul(NazgulName.AKHORAHIL)); | ||||
| 		nazguls.put(NazgulName.HOARMURATH, new Nazgul(NazgulName.HOARMURATH)); | ||||
| 		nazguls.put(NazgulName.ADUNAPHEL, new Nazgul(NazgulName.ADUNAPHEL)); | ||||
| 		nazguls.put(NazgulName.REN, new Nazgul(NazgulName.REN)); | ||||
| 		nazguls.put(NazgulName.UVATHA, new Nazgul(NazgulName.UVATHA)); | ||||
| 	} | ||||
| 	 | ||||
| 	private Nazgul(NazgulName name) { | ||||
| 		this.name = name; | ||||
| 	} | ||||
|  | ||||
| 	public static Nazgul getInstance(NazgulName name) { | ||||
| 		return nazguls.get(name); | ||||
| 	} | ||||
| 	 | ||||
| 	public NazgulName getName() { | ||||
| 		return name; | ||||
| 	} | ||||
| } | ||||
							
								
								
									
										7
									
								
								multiton/src/main/java/com/iluwatar/NazgulName.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								multiton/src/main/java/com/iluwatar/NazgulName.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| package com.iluwatar; | ||||
|  | ||||
| public enum NazgulName { | ||||
|  | ||||
| 	KHAMUL, MURAZOR, DWAR, JI_INDUR, AKHORAHIL, HOARMURATH, ADUNAPHEL, REN, UVATHA; | ||||
| 	 | ||||
| } | ||||
		Reference in New Issue
	
	Block a user