单态设计模式

 1 package com.cn;
 2
 3 public class Test {
 4     public static void main(String agrs[]){
 5         Person p1 = Person.getInstances();
 6         Person p2 = Person.getInstances();
 7         System.out.println(p1==p2);
 8     }
 9 }
10 class Person{
11     static Person person = new Person();
12     private Person(){
13
14     }
15     public static Person getInstances(){
16         return person;
17     }
18 }

打印结果为 :true

保证了Person类在内存中只能被创建一个实例对象

时间: 2024-10-10 00:41:51

单态设计模式的相关文章

JAVA单态设计模式

核心--在类的内部把构造器私有化,同时在内部产生对象,并通过类.静态方法(static)返回实例化对象的引用   设计模式是在大量的实践总结和理论化之后优选的代码结果,编程风格,以及解决问题的思考方式.设计模式就像是经典的棋谱,不同的棋局我们用不同的棋谱. 单态设计模式:采取一定的方法保证在整个软件系统中,对某个类只能产生一个对象实例,并且该类只提供一个取得其对象的实例方法. 在java中实现单态模式只需要执行以下三步:     1.将类的构造方法的访问权限声明为private.这样就不能用ne

PHP 单态设计模式复习

单态设计模式,也可以叫做单例设计模式, 就是一个类只能让它生成一个对象,避免重复的NEW,影响运行效率(每NEW一个对象都会在内存中开辟一块空间) 示例代码 <?php /* * 单态设计模式 */ class DB{ //声明一个私有的静态属性 private static $obj = null; //私有化构造方法,只能让他在内部声明 private function __construct(){ echo "连接数据库的过程<br>"; } //通过此静态方法

PHP 单态设计模式

称呼:单态设计模式.单例设计模式.单件设计模式(可别被面试时候问倒了哦) 概念:Singleton(单例)模式主要作用是保证在面向对象编程语言设计编写的程序中,一个类Class只有一个实例存在. 用途:在很多操作中,比如建立目录 数据库连接都需要这样的单线程操作. 实现方法: (1)如果想让一个类,只能有一个对象,就要先让这个类不能创建对象,且不能被克隆(__clone),因此需要将构造方法以及克隆方法私有化 (2)在类中提供一个静态方法,来创建对象 (3)在类中提供一个静态属性,用于存储实例化

Java中单态设计模式

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

单态设计模式 连接数据库的实例

<?php // final class DB //将类设置为final,禁止其他类继承它 class DB { private static $obj = null;//声明一个私有的,静态的成员属性$obj private function __construct() { //私有构造方法,只能在类的内部实例化对象 echo "连接数据库成功<br>"; } public static function getInstance() { // 通过此静态方法才能获取

单态设计模式(Singleton pattern)

单态(单例)设计模式 单态设计模式(Singleton pattern)就是要保证在整个程序中某个类只能存在一个对象,这个类不能再创建第二个对象. 单态设计模式的写法 私有化构造函数,阻止创建新对象. 单例设计模式: 在内存中对象只有一个存在. */ //饿汉式 class Student { private Student(){} private static Student s = new Student(); public static Student getInstance() { re

Java单态设计模式,扫盲贴

class Person { String name; private static final Person p = new Person(); private Person() { name = "张三"; } public static Person getP() { return p; } } public class TestSingleDemo2 { public static void main(String args[]) { Person p = null; p =

写一个单态设计模式、一个工厂设计模式、代理设计模式

单态: package TKaoShi; public class DanTaiPerson { private static DanTaiPerson dtp; private String name; private char sex; private DanTaiPerson(){ } private DanTaiPerson(String name,char sex){ this.name=name; this.sex=sex; } public static DanTaiPerson

PHP 对象 单态(单例,单件)设计模式 static

<?php header('content-type:text/html;charset=utf-8'); /*  *单态设计模式 单例  单件  *一个类只能创建一个对象   *1.如果想让一个类,只能有一个对象,就要先让这个类不能创建对象,将构造方法private  *2.可以在类的内部使用一个静态方法来创建对象  */     class Persion{         //使用静态成员实现单态设计         static $obj = null;         private