Java开发中的设计模式详解—单例模式
2016-09-02 17:07
190 查看
java之设计模式
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。本章系Java之美[从菜鸟到高手演变]系列之设计模式,我们会以理论与实践相结合的方式来进行本章的学习,希望广大程序爱好者,学好设计模式,做一个优秀的软件工程师!
聪明比勤奋高级,智商比努力牛逼,聪明是重要的优点,而不用心是次要的缺点。
潜移默化之下,孩子很容易轻视勤奋的力量。哪怕原本有这种能力,也会忽略这种能力的价值。
单例设计模式(singleton)设计模式一共有23种,分为懒汉式与饿汉式
懒汉:不管吃饱了没吃饱都一直吃
饿汉:你给我我就吃,不给就饿死 public static ehan=null;
1.工厂模式
2.代理模式
3.
单例:某个一个类,只允许创建一个对象
构造方法
如果要禁止外界随意创建某个类的对象时,需要做的第一是:
1>把构造方法私有化
2>需要在本类中创建静态的本类对象
3>需要在本类中提供一个公共的静态方法,用来获取本类对象。
public class Demo{
private static Demo D=null; //空指向
private Demo(){}
//此方法用来获取demo对象,如果你调用此方法,则做赋值操作
public static Demo getIns
4000
tance(){
if(d==null){
d=new Demo();
}
return d;s
}
}
---------------------------------------------------------
都是表示类与类之间的构架关系 也就是表示对象的逻辑关系
设计模式根据使用类型可以分为三种:
1、 创建模式:工厂模式、单子模式、建造者模式、原型模式、工厂方法模式。
2、 结构模式:外观模式、代理模式、适配器模式、组合模式、装饰模式、桥模式、
共享模式。
3、 行为模式:模板模式、纪念品模式、观察者模式、责任链模式、命令模式、声明模式、
策略模式、中介模式、解释器模式、访问模式
说白了模式就是前人经过大量的实践,总结出来的优化的对象关系 你也可以自己总结出来
單例模式:保证类在内存中只有一个对象
*
* 如何保证泪在内存中只有一个对象呢?
* A:把构造方法私有化
* B:在成员位置自己创建一个对象
* C:通过一个公共的方法提供访问
*/
public class StudentMain {
public static void main(String[] args) {
// Student student = new Student();
// Student student2 = new Student();
// System.out.println(s1==s2);//false;
//通过单例如何得到对象呢?
// Student.student=null;//这个说明外部把内部的成员修改了,所以内部的成员要private话
Student student = Student.getStudent();
Student student2 = Student.getStudent();
System.out.println(student==student2);
System.out.println(student);
System.out.println(student2);
}
}
励志语句:学如春起之苗,不见其增,日有所长;辍学如磨刀之石,不见其减,日有所亏。
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。本章系Java之美[从菜鸟到高手演变]系列之设计模式,我们会以理论与实践相结合的方式来进行本章的学习,希望广大程序爱好者,学好设计模式,做一个优秀的软件工程师!
聪明比勤奋高级,智商比努力牛逼,聪明是重要的优点,而不用心是次要的缺点。
潜移默化之下,孩子很容易轻视勤奋的力量。哪怕原本有这种能力,也会忽略这种能力的价值。
单例设计模式(singleton)设计模式一共有23种,分为懒汉式与饿汉式
懒汉:不管吃饱了没吃饱都一直吃
饿汉:你给我我就吃,不给就饿死 public static ehan=null;
1.工厂模式
2.代理模式
3.
单例:某个一个类,只允许创建一个对象
构造方法
如果要禁止外界随意创建某个类的对象时,需要做的第一是:
1>把构造方法私有化
2>需要在本类中创建静态的本类对象
3>需要在本类中提供一个公共的静态方法,用来获取本类对象。
public class Demo{
private static Demo D=null; //空指向
private Demo(){}
//此方法用来获取demo对象,如果你调用此方法,则做赋值操作
public static Demo getIns
4000
tance(){
if(d==null){
d=new Demo();
}
return d;s
}
}
---------------------------------------------------------
都是表示类与类之间的构架关系 也就是表示对象的逻辑关系
设计模式根据使用类型可以分为三种:
1、 创建模式:工厂模式、单子模式、建造者模式、原型模式、工厂方法模式。
2、 结构模式:外观模式、代理模式、适配器模式、组合模式、装饰模式、桥模式、
共享模式。
3、 行为模式:模板模式、纪念品模式、观察者模式、责任链模式、命令模式、声明模式、
策略模式、中介模式、解释器模式、访问模式
说白了模式就是前人经过大量的实践,总结出来的优化的对象关系 你也可以自己总结出来
單例模式:保证类在内存中只有一个对象
*
* 如何保证泪在内存中只有一个对象呢?
* A:把构造方法私有化
* B:在成员位置自己创建一个对象
* C:通过一个公共的方法提供访问
*/
public class StudentMain {
public static void main(String[] args) {
// Student student = new Student();
// Student student2 = new Student();
// System.out.println(s1==s2);//false;
//通过单例如何得到对象呢?
// Student.student=null;//这个说明外部把内部的成员修改了,所以内部的成员要private话
Student student = Student.getStudent();
Student student2 = Student.getStudent();
System.out.println(student==student2);
System.out.println(student);
System.out.println(student2);
}
}
励志语句:学如春起之苗,不见其增,日有所长;辍学如磨刀之石,不见其减,日有所亏。
相关文章推荐
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解
- Java开发中的23种设计模式详解