From c7941383a996fdb86b061289bdfc860751abfa65 Mon Sep 17 00:00:00 2001 From: dbdu <1797890817@qq.com> Date: Tue, 28 Mar 2017 15:44:01 +0800 Subject: [PATCH 1/3] add for Singleton mode --- .../src/com/ddb/javacore/ood6/Singleton.java | 21 +++++++++++++++++++ .../com/ddb/javacore/ood6/TestSingleton.java | 18 ++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 JavaCore/src/com/ddb/javacore/ood6/Singleton.java create mode 100644 JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java diff --git a/JavaCore/src/com/ddb/javacore/ood6/Singleton.java b/JavaCore/src/com/ddb/javacore/ood6/Singleton.java new file mode 100644 index 0000000..5bffdc7 --- /dev/null +++ b/JavaCore/src/com/ddb/javacore/ood6/Singleton.java @@ -0,0 +1,21 @@ +package com.ddb.javacore.ood6; + +public class Singleton { + // 3.用来存储当前类的一个实例、对象 + //private static Singleton instance = null; //懒汉式 + private static Singleton instance = new Singleton(); //饿汉式 + + // 1.私有化构造方法 + private Singleton() { + System.out.println("构造函数被执行...."); + } + + // 2.提供外部可以得到的对象实例的方法 + public static Singleton getInstance() { + if (instance == null) { + instance = new Singleton(); + } + return instance; + } + +} diff --git a/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java b/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java new file mode 100644 index 0000000..f6378c3 --- /dev/null +++ b/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java @@ -0,0 +1,18 @@ +package com.ddb.javacore.ood6; + +public class TestSingleton { + + public static void main(String[] args) { + Singleton singleton1 =Singleton.getInstance(); + Singleton singleton2 =Singleton.getInstance(); + Singleton singleton3 =Singleton.getInstance(); + Singleton singleton4 =Singleton.getInstance(); + + System.out.println(singleton1); + System.out.println(singleton2); + System.out.println(singleton3); + System.out.println(singleton4); + //System.out.println(Singleton.instance); + } + +} From c597171affd81f62dc35532a7195e7091bc24c2b Mon Sep 17 00:00:00 2001 From: dbdu <1797890817@qq.com> Date: Thu, 6 Apr 2017 20:53:58 +0800 Subject: [PATCH 2/3] add for xuliehua --- JavaCore/src/com/ddb/javacore/ood2/Human.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/JavaCore/src/com/ddb/javacore/ood2/Human.java b/JavaCore/src/com/ddb/javacore/ood2/Human.java index 77b9640..ef2bbac 100644 --- a/JavaCore/src/com/ddb/javacore/ood2/Human.java +++ b/JavaCore/src/com/ddb/javacore/ood2/Human.java @@ -16,7 +16,8 @@ public class Human implements Serializable, Comparable { private String id; private String name; - private Integer age; + private Integer age; + //private transient Integer age; //不进行序列化! private String work; public Human() { @@ -41,7 +42,7 @@ public Human(String id, String name, Integer age, String work) { */ @Override public String toString() { - return "Human [name=" + name + ", age=" + age + "]"; + return "Human [id=" + id + ", age=" + age + "]"; } public Human(String id, String name) { From c6f06354b1e63e7662b6ea519373bcbae7b07d51 Mon Sep 17 00:00:00 2001 From: dbdu <1797890817@qq.com> Date: Thu, 6 Apr 2017 20:57:12 +0800 Subject: [PATCH 3/3] Merge branch 'master' of https://github.com/1797890817/JavaBase # Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit. Signed-off-by: dbdu <1797890817@qq.com> --- .../src/com/ddb/javacore/ood6/Singleton.java | 21 +++++++++++++++++++ .../com/ddb/javacore/ood6/TestSingleton.java | 18 ++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 JavaCore/src/com/ddb/javacore/ood6/Singleton.java create mode 100644 JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java diff --git a/JavaCore/src/com/ddb/javacore/ood6/Singleton.java b/JavaCore/src/com/ddb/javacore/ood6/Singleton.java new file mode 100644 index 0000000..5bffdc7 --- /dev/null +++ b/JavaCore/src/com/ddb/javacore/ood6/Singleton.java @@ -0,0 +1,21 @@ +package com.ddb.javacore.ood6; + +public class Singleton { + // 3.用来存储当前类的一个实例、对象 + //private static Singleton instance = null; //懒汉式 + private static Singleton instance = new Singleton(); //饿汉式 + + // 1.私有化构造方法 + private Singleton() { + System.out.println("构造函数被执行...."); + } + + // 2.提供外部可以得到的对象实例的方法 + public static Singleton getInstance() { + if (instance == null) { + instance = new Singleton(); + } + return instance; + } + +} diff --git a/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java b/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java new file mode 100644 index 0000000..f6378c3 --- /dev/null +++ b/JavaCore/src/com/ddb/javacore/ood6/TestSingleton.java @@ -0,0 +1,18 @@ +package com.ddb.javacore.ood6; + +public class TestSingleton { + + public static void main(String[] args) { + Singleton singleton1 =Singleton.getInstance(); + Singleton singleton2 =Singleton.getInstance(); + Singleton singleton3 =Singleton.getInstance(); + Singleton singleton4 =Singleton.getInstance(); + + System.out.println(singleton1); + System.out.println(singleton2); + System.out.println(singleton3); + System.out.println(singleton4); + //System.out.println(Singleton.instance); + } + +}