fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7.  
  8. class MyManager {
  9. String name;
  10. public MyManager(String name) {
  11. this.name = name;
  12. }
  13. void startTask() {
  14. System.out.println("My name is " + name);
  15. }
  16. }
  17.  
  18. class MySingleton {
  19. private MyManager mManager;
  20. private static MySingleton mInstance;
  21.  
  22. private MySingleton() {
  23. }
  24.  
  25. public static MySingleton getInstance() {
  26. if (mInstance == null) {
  27. mInstance = new MySingleton();
  28. }
  29. return mInstance;
  30. }
  31.  
  32. public MyManager getManagerByName(String name) {
  33. //I don’t show the GET_MGR function, it is a 3rd party library function
  34. mManager = GET_MGR(name);
  35. return mManager;
  36. }
  37.  
  38. private MyManager GET_MGR(String name) {
  39. return new MyManager(name);
  40. }
  41.  
  42. public void doTask() {
  43. mManager.startTask();
  44. }
  45.  
  46. }
  47.  
  48. public class Main {
  49.  
  50.  
  51. public static void main(String[] args) {
  52. MySingleton.getInstance().getManagerByName("aioobe");
  53. MySingleton.getInstance().doTask();
  54. }
  55.  
  56. }
Success #stdin #stdout 0.09s 320256KB
stdin
Standard input is empty
stdout
My name is aioobe