java中单态模式或单例模式(Singleton)有什么意义?

8.单态模式或单例模式(Singleton) (视频下载) (全部书籍)

单态模式有什么用呢?想一下Adobe Photoshop ,处理两张图,会启动两个photoshop吗?多耗费内存呀!
( Consider Adobe or oracle,
process two images with two adobes?),所以单态模式在公司编程是非常重要的。有很多场合都要求,对象只能存在一个,多了的话就太耗费资源。(马克-to-win)

class Photoshop {
/* 通过调试发现写成 static Photoshop photoshop或static Photoshop
photoshop=null;是一样的,开始时都为null,马克-to-win,另外在调试时 可以写上观察Photoshop.photoshop的值,它是独立于任何对象之外的,从程序开始运行的main方法时, 这个值就有了, 只不过为null罢了,
*/
    static Photoshop photoshop;//这个值独立于任何对象存在,实例化任何对象之前,这个成员就有可能有值。

static Photoshop getInstanceQixy() {
        if (photoshop == null) {
            photoshop = new Photoshop();
            System.out.println("成功创建");
        } else {
            System.out.println("已经创建了该类的实例,不能再创建!");
        }

return photoshop;
    }

void drawImage() {
        System.out.println("draw image using photoshop");
    }
}

public class Test {
    public static void main(String[] args) {
        Photoshop photoshopI1 = Photoshop.getInstanceQixy();
        Photoshop photoshopI2 = Photoshop.getInstanceQixy();
        System.out.println(photoshopI1 == photoshopI2);
        System.out.println(photoshopI1 == Photoshop.photoshop);                      photoshopI1.drawImage();
        Photoshop photoshopI3 = new Photoshop();
。。。。。。。。。

更多详情请见:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner2_web.html#SingleTon

原文地址:https://www.cnblogs.com/mark-to-win/p/9691903.html

时间: 2025-01-01 15:13:17

java中单态模式或单例模式(Singleton)有什么意义?的相关文章

Java中的五种单例模式实现方法

[代码] Java中的五种单例模式实现方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 package s

Java中单态设计模式

Java中单态设计模式 2011-09-23 16:38:46|  分类: Java |  标签:technology!  |举报|字号 订阅 此博文是转自新浪博客中一名叫做"俊俊的BLOG“用户的一篇博文.感觉此博文确实很不错,所以在此拿出来分享一下!(笔者只是对其所举的代码略做了一些修改) 一概念: 设计模式:设计模式是指经过大量的实践总结和理论化之后的优选的代码结构.编程风格.以及解决问题的思路. 单态设计模式:采取一定的方法保证在整个软件系统中,对某个类只能产生一个对象实例,并且该类只提

Java中MVC模式

MVC本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器.使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式.比如一批统计数据你可以分别用柱状图.饼图来表示.C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新. 模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用.最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用 Cold

java设计模式 -------- 创建模式 之 单例模式

本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020 单例模式也是创建模式中的一种. 单例模式: 所谓的单例模式,即单一的实例,保证类在内在中只有一个对象. 举例: windows的打印服务,网络计数器 应用: 线程池,数据库连接池,Runtime 在应用单例模式前,先来看一个例子. Student.java public class Student { } StudentTest.java public class Studen

快速理解Java中的五种单例模式

解法一:只适合单线程环境(不好) package test; /** * @author xiaoping * */ public class Singleton { private static Singleton instance=null; private Singleton(){ } public static Singleton getInstance(){ if(instance==null){ instance=new Singleton(); } return instance;

Java中的静态方法和单例模式比较

区别 单例模式方法 静态方法 实例 创建实例 无 运行 类的实例的方法 类的方法 也可以通过实例化,在通过类的实例来运行 是否可以被重写 可以 可以(子类的该方法也必须是静态方法) 调用其他静态方法 可以 可以 调用其他实例方法 可以 不可以 访问静态成员 可以 可以 访问实例成员 可以 不可以 使用关键字this 可以 不可以       未完啊待续!

java中异常(Exception)的定义,意义和用法。举例

1.异常(Exception)的定义,意义和用法 (视频下载) (全部书籍) 我们先给出一个例子,看看异常有什么用? 例:1.1-本章源码 public class Test {    public static void main(String[] args) {        int userInput=0;        int I = 6 / userInput;        System.out.println("马克-to-win:优雅结束");    }} 输出结果:

JAVA中单例模式的几种实现方式

1 线程不安全的实现方法 首先介绍java中最基本的单例模式实现方式,我们可以在一些初级的java书中看到.这种实现方法不是线程安全的,所以在项目实践中如果涉及到线 程安全就不会使用这种方式.但是如果不需要保证线程安全,则这种方式还是不错的,因为所需要的开销比较小.下面是具体的实现代码: 转http://www.cnblogs.com/CodeGuy/p/3580486.html public Class Singleton { private static Singleton instance

java中什么是线程安全给出一个例子

8.线程安全 什么是线程安全? 马克-to-win: (视频下载) (全部书籍)最大的大白话,你的代码一个线程执行挺好,一上多线程测试就玩儿完(结果不是你所想要的),这就是线程不安全.反之为线程安全.首先,我们把第二章讲单态模式或单例模式(Singleton)的例子再搬过来一次,但这里把一些无关的打印和注释去掉了: 例:1.8.1-本章源码class Photoshop {    private Photoshop() {    }    private static Photoshop pho