【摘要】在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?
这应该是类设计者的责任,而不是使用都的责任。【全文】单键模式(Singleton) 动机 在软件系统中,经常有.....
分类:
其他好文 时间:
2014-05-23 06:03:28
阅读次数:
303
public class TraditionalThreadTest {
static class Outputer {
public void output1(String name) {
synchronized (Outputer.class) {
for (int i = 0; i < name.length(); i++) {
System.out.pri...
分类:
其他好文 时间:
2014-05-22 23:53:45
阅读次数:
442
动态绑定:
传统的函数一般在编译时就已经把参数信息和函数实现打包到编译后的源码中了,而在OC中最常使用的是消息机制。调用一个实例的方法,所做的是向该实例的指针发送消息,实例在收到消息后,从自身的实现中寻找响应这条消息的方法。
动态绑定所做的,即是在实例所属类确定后,将某些属性和相应的方法绑定到实例上。这里所指的属性和方法当然包括了原来没有在类中实现的,而是在运行时才需要的新加入的实...
分类:
其他好文 时间:
2014-05-22 17:14:49
阅读次数:
225
当将类的某个数据成员声明为static时,该静态数据成员只能被定义一次,而且要被同类的所有对象共享。各个对象都拥有类中每一个普通数据成员的副本,但静态数据成员只有一个实例存在,与定义了多少类对象无关。静态方法就是与该类相关的,是类的一种行为,而不是与该类的实例对象相关。
静态数据成员的用途之一是统计...
分类:
其他好文 时间:
2014-05-21 20:15:29
阅读次数:
249
在Java设计模式中,单例模式相对来说算是比较简单的一种构建模式。适用的场景在于:对于定义的一个类,在整个应用程序执行期间只有唯一的一个实例对象。如Android中常见的Application对象。通过单例模式,自行实例化并向这个系统提供这个单一实例的访问方法。根据此单一实例产生的时机不同(当然,都...
分类:
其他好文 时间:
2014-05-21 17:24:40
阅读次数:
291
设计模式主要分三个类型:创建型、结构型和行为型。
创建型:
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。
三、Factory Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个...
分类:
其他好文 时间:
2014-05-21 16:20:55
阅读次数:
216
构造函数:构造函数是一种特殊的成员函数
构造函数的特点:
1 构造函数的函数名和类名相同
2 构造函数没有返回值
3 构造函数用于初始化对象
通过一个实例说明构造函数的作用
#include
using namespace std;
class Time//时间类
{
public:
void set_time();//设置时间
void show_time();//...
分类:
其他好文 时间:
2014-05-21 14:38:17
阅读次数:
263
析构函数和构造函数是一对,就像C语言中的malloc和free,C++中的new和delete一样
先从一个实例说起:
#include
#include
using namespace std;
class Student
{
public:
Student(int n, string nam, char s)
{
num = n;
name = nam;
sex...
分类:
其他好文 时间:
2014-05-21 12:33:43
阅读次数:
259
类加载器
简介
类加载器(class loader)用来加载 Java 类到 Java 虚拟机中。一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Java 编译器编译之后就被转换成 Java 字节代码(.class 文件)。类加载器负责读取 Java 字节代码,并转换成 java.lang.Class类的一个实例。每个这样的实例用来表...
分类:
其他好文 时间:
2014-05-21 07:43:45
阅读次数:
266
本帖最后由 osdba 于 2011-04-21 16:33
编辑特性MySQLPostgreSQL实例通过执行 MySQL 命令(mysqld)启动实例。一个实例可以管理一个或多个数据库。一台服务器可以运行多个
mysqld 实例。一个实例管理器可以监视 mysqld 的各个实例。通过执行 Pos...
分类:
数据库 时间:
2014-05-21 06:10:50
阅读次数:
467